Apidog

Plataforma de desarrollo de API colaborativa todo en uno

Diseño de API

Documentación de API

Depuración de API

Simulación de API

Prueba automatizada de API

¿Cómo hacer una solicitud HTTP GET en Javascript?

Aprende a hacer peticiones HTTP GET en Javascript. Descubre Apidog, plataforma web para explorar, probar e integrar APIs fácilmente.

Daniel Costa

Daniel Costa

Updated on May 9, 2025

¿Alguna vez te has preguntado cómo se comunican los sitios web entre sí e intercambian datos? ¿Cómo accedes a la información de una fuente en línea y la muestras en tu propia página web? ¿Cómo envías solicitudes y recibes respuestas a través de Internet?

Si tienes curiosidad por estas preguntas, entonces estás en el lugar correcto. En esta entrada del blog, te mostraré cómo hacer una solicitud HTTP GET en Javascript, una de las formas más comunes y útiles de interactuar con las API web y cómo Apidog puede ayudarte.

💡
Apidog es una plataforma de colaboración de API todo en uno que proporciona documentación de API, depuración de API, simulación de API y pruebas automatizadas de API. Proporciona capacidades avanzadas para manejar solicitudes GET de javascript. Descarga Apidog gratis.
button

Pero primero, entendamos qué es una solicitud HTTP GET y por qué la necesitas.

¿Qué es una solicitud HTTP GET?

HTTP significa Protocolo de transferencia de hipertexto, que es un conjunto de reglas que define cómo se formatean y transmiten los mensajes a través de la web. HTTP es la base de la comunicación de datos para la World Wide Web.

Una solicitud es un mensaje que envías a un servidor, pidiendo alguna información o acción. Una respuesta es un mensaje que el servidor te devuelve, conteniendo la información o el resultado que solicitaste.

Una solicitud GET es un tipo de solicitud HTTP que le pide al servidor que te envíe algunos datos. Por ejemplo, cuando escribes una URL en tu navegador, estás enviando una solicitud GET al servidor, pidiendo la página web que corresponde a esa URL. El servidor entonces responde con el código HTML de la página web, que tu navegador renderiza y muestra.

Javascript get Request

Una solicitud GET tiene dos componentes principales: una URL y una cadena de consulta. Una URL es la dirección del recurso al que quieres acceder, como https://example.com. Una cadena de consulta es una parte de la URL que contiene información o parámetros adicionales, como ?name=John&age=25. Una cadena de consulta comienza con un signo de interrogación (?) y consiste en pares clave-valor separados por ampersands (&).

Una solicitud GET se ve algo así:

https://example.com?name=John&age=25

En este ejemplo, estamos enviando una solicitud GET a https://example.com, con dos parámetros: name y age. El servidor utilizará estos parámetros para procesar nuestra solicitud y enviarnos la respuesta apropiada.

¿Por qué necesitas una solicitud HTTP GET?

Una solicitud HTTP GET es útil cuando quieres recuperar algunos datos de un servidor web, sin cambiar nada en el servidor. Por ejemplo, es posible que desees obtener los últimos artículos de noticias, informes meteorológicos, precios de acciones o perfiles de usuario de una fuente en línea.

Sin embargo, no todos los servidores web están abiertos y accesibles para cualquiera. Algunos servidores web requieren autenticación, autorización o pago para acceder a sus datos. Estos servidores web se denominan API web.

Una API web es una interfaz de programación de aplicaciones que te permite interactuar con un servidor web mediante programación, utilizando métodos y parámetros predefinidos. Una API web actúa como un puente entre tu aplicación y el servidor web, permitiéndote intercambiar datos de una manera estructurada y estandarizada.

Por ejemplo, si quieres obtener la temperatura actual en París de una API web meteorológica, es posible que debas enviar una solicitud GET como esta:

https://api.weather.com?city=Paris&key=123456

En este ejemplo, estamos enviando una solicitud GET a https://api.weather.com, con dos parámetros: city y key. El parámetro city especifica la ubicación para la que queremos obtener la información meteorológica, y el parámetro key es un identificador único que demuestra que estamos autorizados a utilizar la API web. La API web entonces responderá con la temperatura actual en París, en un formato que podemos analizar y utilizar fácilmente en nuestra aplicación.

Hay muchas API web disponibles en Internet, que cubren varios dominios y temas. Algunas API web son gratuitas y abiertas, mientras que otras son de pago y restringidas. Algunas API web son simples y fáciles de usar, mientras que otras son complejas y avanzadas. Algunas API web están bien documentadas y son fiables, mientras que otras están mal documentadas y no son fiables.

¿Cómo encuentras y eliges la mejor API web para tus necesidades? ¿Cómo aprendes a usar una API web y qué parámetros enviar? ¿Cómo manejas los errores y excepciones al usar una API web? ¿Cómo optimizas el rendimiento y la seguridad de tus solicitudes de API web?

Estas son algunas de las preguntas que puedes encontrar al trabajar con API web. Afortunadamente, existe una herramienta que puede ayudarte con todos estos desafíos y más. Esa herramienta se llama Apidog.

button

Cómo hacer solicitudes HTTP GET en Javascript

Hacer solicitudes HTTP GET en JavaScript es una forma común de interactuar con servidores o API y recuperar datos. Hay varios métodos que puedes usar para hacer solicitudes HTTP GET en JavaScript, como:

Cómo enviar una solicitud GET en JavaScript usando XMLHttpRequest

El objeto XMLHttpRequest es una característica nativa de JavaScript empleada para comunicarse con servidores y cargar contenido en páginas web sin actualizar el navegador. Cuando deseas obtener datos de un servidor, utilizas la solicitud GET. Para enviar con éxito una solicitud GET usando XMLHttpRequest en JavaScript, es importante asegurarse de que los siguientes pasos se lleven a cabo correctamente:

  1. Primero, crea un nuevo objeto XMLHttpRequest:
const xhr = new XMLHttpRequest();
  1. Luego, especifica la URL del punto final de la API al que deseas hacer una solicitud GET:
const url = 'https://api.example.com/data';
  1. A continuación, usa el método open() para inicializar la solicitud:
xhr.open('GET', url);
  1. Luego, usa la propiedad onreadystatechange para definir una función de devolución de llamada que se llamará cuando cambie el estado de la solicitud:
xhr.onreadystatechange = function() {
  if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
    console.log(xhr.responseText);
  }
};
  1. Finalmente, usa el método send() para enviar la solicitud:
xhr.send();

En este ejemplo, estamos haciendo una solicitud GET al punto final de la API especificado por la variable url. Estamos usando la propiedad onreadystatechange para definir una función de devolución de llamada que se llamará cuando cambie el estado de la solicitud. Cuando la solicitud se completa y el código de estado es 200, estamos registrando el texto de la respuesta en la consola.

Cómo hacer una solicitud GET con la API Fetch

La API Fetch es una interfaz JavaScript contemporánea que opera con promesas, lo que permite el envío de solicitudes HTTP desde navegadores y Node.js (a partir de la versión 18) a los servidores. Puede manejar las mismas tareas que el objeto XMLHttpRequest, pero de una manera más amigable para JavaScript debido a su uso de promesas. Además, puede ser utilizada por otras tecnologías como Service Workers.

Exploremos cómo hacer una solicitud HTTP GET usando la API Fetch.

  1. Primero, crea un nuevo archivo JavaScript y agrega el siguiente código para importar la API Fetch:
import fetch from 'node-fetch';
  1. Luego, especifica la URL del punto final de la API al que deseas hacer una solicitud GET:
const url = 'https://api.example.com/data';
  1. Luego, usa la API Fetch para hacer la solicitud GET:
fetch(url)
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));
  1. Finalmente, ejecuta el archivo JavaScript para ver los resultados de la solicitud GET.

La API Fetch proporciona una forma simple e intuitiva de hacer solicitudes HTTP GET en JavaScript. Siguiendo estos pasos, puedes hacer fácilmente solicitudes GET a cualquier punto final de la API.

Aquí hay un ejemplo de cómo hacer una solicitud HTTP GET usando la API Fetch para recuperar datos de la API OpenWeatherMap:

const apiKey = 'YOUR_API_KEY';
const city = 'Seattle';
const url = `https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=${apiKey}`;

fetch(url)
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));

En este ejemplo, estamos haciendo una solicitud GET a la API OpenWeatherMap para recuperar datos meteorológicos para Seattle. Estamos pasando nuestra clave API y el nombre de la ciudad para la que queremos recuperar datos como parámetros de consulta en la URL.

Siguiendo estos pasos, puedes hacer fácilmente solicitudes HTTP GET usando la API Fetch en JavaScript.

Axios, jquery, Javascrip illustration

Hacer una solicitud HTTP GET con Axios

Axios es una biblioteca cliente HTTP. Esta biblioteca se basa en promesas que simplifican el envío de solicitudes HTTP asíncronas a puntos finales REST. Enviaremos una solicitud GET al punto final de la API JSONPlaceholder Posts.

Axios, a diferencia de la API Fetch, no está integrado. Esto significa que necesitas instalar Axios en tu proyecto JavaScript.

Aquí están las instrucciones paso a paso:

  1. Primero, instala Axios usando npm o yarn:
npm install axios

o

yarn add axios
  1. A continuación, importa Axios en tu archivo JavaScript:
import axios from 'axios';
  1. Luego, especifica la URL del punto final de la API al que deseas hacer una solicitud GET:
const url = 'https://api.example.com/data';
  1. Finalmente, usa Axios para hacer la solicitud GET:
axios.get(url)
  .then(response => console.log(response.data))
  .catch(error => console.error('Error:', error));

En este ejemplo, estamos haciendo una solicitud GET al punto final de la API especificado por la variable url. Estamos usando el método then para manejar la respuesta y el método catch para manejar cualquier error que pueda ocurrir.

Aquí hay otro ejemplo de cómo hacer una solicitud HTTP GET usando Axios para recuperar datos de la API OpenWeatherMap:

const apiKey = 'YOUR_API_KEY';
const city = 'Seattle';
const url = `https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=${apiKey}`;

axios.get(url)
  .then(response => console.log(response.data))
  .catch(error => console.error('Error:', error));

En este ejemplo, estamos haciendo una solicitud GET a la API OpenWeatherMap para recuperar datos meteorológicos para Seattle. Estamos pasando nuestra clave API y el nombre de la ciudad para la que queremos recuperar datos como parámetros de consulta en la URL.

Siguiendo estos pasos, puedes hacer fácilmente solicitudes HTTP GET usando la biblioteca Axios en JavaScript.

¿Cómo enviar una solicitud GET usando jQuery?

Hacer solicitudes HTTP en jQuery es relativamente sencillo y similar a la API Fetch y Axios. Para hacer una solicitud GET, primero instalarás jQuery o harás uso de su CDN en tu proyecto:

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>

A continuación, especifica la URL del punto final de la API al que deseas hacer una solicitud GET:

const url = 'https://api.example.com/data';

Luego, usa el método $.get() para hacer la solicitud GET:

$.get(url, function(data) {
  console.log(data);
});

Finalmente, ejecuta tu archivo JavaScript para ver los resultados de la solicitud GET.

En este ejemplo, estamos haciendo una solicitud GET al punto final de la API especificado por la variable url. Estamos usando el método $.get() para hacer la solicitud y la devolución de llamada function(data) para manejar la respuesta.

Aquí hay otro ejemplo de cómo hacer una solicitud HTTP GET usando jQuery para recuperar datos de la API OpenWeatherMap:

const apiKey = 'YOUR_API_KEY';
const city = 'Seattle';
const url = `https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=${apiKey}`;

$.get(url, function(data) {
  console.log(data);
});

En este ejemplo, estamos haciendo una solicitud GET a la API OpenWeatherMap para recuperar datos meteorológicos para Seattle. Estamos pasando nuestra clave API y el nombre de la ciudad para la que queremos recuperar datos como parámetros de consulta en la URL.

Manejo de errores en solicitudes HTTP GET de Javascript

Al hacer una solicitud HTTP GET, es importante manejar los errores que puedan ocurrir. Aquí hay algunas prácticas recomendadas para manejar errores en la API REST:

  1. Códigos de estado HTTP: cuando un cliente realiza una solicitud a un servidor HTTP, el servidor debe notificar al cliente si la solicitud se manejó correctamente o no. HTTP logra esto con cinco categorías de códigos de estado: nivel 100 (informativo), nivel 200 (éxito), nivel 300 (redirección), nivel 400 (error del cliente) y nivel 500 (error del servidor). Según el código de respuesta, un cliente puede suponer el resultado de una solicitud en particular.
  2. Manejo de errores: el primer paso para manejar errores es proporcionar a un cliente un código de estado adecuado. Además, es posible que necesitemos proporcionar más información en el cuerpo de la respuesta. La forma más sencilla de manejar errores es responder con un código de estado apropiado. Aquí hay algunos códigos de respuesta comunes: 400 Solicitud incorrecta, 401 No autorizado, 403 Prohibido, 404 No encontrado, 412 Fallo de condición previa, 500 Error interno del servidor y 503 Servicio no disponible. Si bien son básicos, estos códigos permiten a un cliente comprender la naturaleza general del error que ocurrió. Sabemos que si recibimos un error 403, por ejemplo, carecemos de permisos para acceder al recurso que solicitamos. Sin embargo, en muchos casos, necesitamos proporcionar detalles complementarios en nuestras respuestas.
  3. Manejo de errores para respuestas HTTP fallidas y errores de red: la función fetch() generará automáticamente un error para los errores de red, pero no para los errores HTTP, como las respuestas 4xx o 5xx. Para los errores HTTP, podemos verificar la propiedad response.ok para ver si la solicitud falló y rechazar la promesa nosotros mismos llamando a return Promise.reject(error).
  4. Manejar errores de solicitud: cuando ocurre un error, puedes obtener detalles de lo que falló para informar a tu usuario. En algunos casos, también puedes reintentar automáticamente la solicitud. Una aplicación debe brindar al usuario comentarios útiles cuando falla el acceso a los datos. Un objeto de error sin procesar no es particularmente útil como retroalimentación.

¿Qué es Apidog y por qué deberías usarlo?

Apidog es una plataforma basada en la web que te permite descubrir, probar e integrar API web con facilidad. Apidog está diseñado para hacerte la vida más fácil al trabajar con API web, proporcionándote las siguientes características y beneficios:

  • Descubrir: Apidog te ayuda a encontrar las mejores API web para tus necesidades, proporcionándote una lista seleccionada y con capacidad de búsqueda de miles de API web, que cubren varias categorías y temas.
  • Probar: Apidog te ayuda a probar y depurar API web, proporcionándote una interfaz interactiva y fácil de usar que te permite enviar solicitudes y recibir respuestas en tiempo real. Puedes personalizar fácilmente los parámetros, encabezados y cuerpo de tus solicitudes, y ver el estado, los encabezados y el cuerpo de las respuestas. También puedes ver el tiempo de respuesta, el tamaño y el formato de cada solicitud y respuesta, y compararlos con diferentes API web. También puedes guardar, compartir y exportar tus solicitudes y respuestas, y usarlas en tus propias aplicaciones.
  • Integrar: Apidog te ayuda a integrar API web con tus aplicaciones, proporcionándote los fragmentos de código y la documentación de cada API web. Puedes elegir entre diferentes lenguajes y marcos de programación, como...

Si estás interesado en usar Apidog, puedes descargarlo gratis y comenzar a usarlo de inmediato.

button

Pero basta de hablar, veamos Apidog en acción. En la siguiente sección, te mostraré cómo usar Apidog para hacer una solicitud HTTP GET en Javascript, usando una API web simple y divertida.

Cómo generar una solicitud HTTP GET en Javascript con Apidog

Apidog puede ayudarte a generar código javascript, todo lo que necesitas hacer es:

Paso 1: Abre Apidog y haz clic en el botón "Nueva solicitud" para crear una nueva solicitud.

apidog

Paso 2: Selecciona la solicitud Get

apidog

Paso 3: Ingresa la URL del punto final de la API que deseas y cambia a la interfaz de Diseño.

apidog

Paso 4: Haz clic en Generar código de cliente.

apidog

Paso 4: Selecciona el código Javascript que deseas generar, puede ser Fetch, Axios, Jquery, XHR y más. Simplemente cópialo y pégalo en tu proyecto

apidog

¿Cómo probar la solicitud HTTP GET de Javascript usando Apidog?

Para probar la solicitud HTTP Get usando Apidog, debes seguir estos sencillos pasos:

  1. Abre Apidog y haz clic en el botón "Nueva solicitud" para crear una nueva solicitud.
apidog
  1. Selecciona "POST" como el método de la solicitud.
apidog

3. Ingresa la URL del punto final de la API

apidog

Luego haz clic en el botón "Enviar" para enviar la solicitud a la API.

apidog

Como puedes ver, Apidog te muestra la URL, los parámetros, los encabezados y el cuerpo de la solicitud, y el estado, los encabezados y el cuerpo de la respuesta. También puedes ver el tiempo de respuesta, el tamaño y el formato de la solicitud y la respuesta, y compararlos con diferentes API web.

Mejores prácticas para solicitudes HTTP GET de Javascript

Enviar solicitudes HTTP GET bien elaboradas es crucial para una comunicación eficiente y segura con los servidores web. Optimizarlo para la seguridad, el rendimiento y la escalabilidad es crucial para un sistema robusto y eficiente. Aquí hay algunas prácticas recomendadas a seguir:

Seguridad

  • Codificación de URL: Evita incluir caracteres especiales directamente en la URL. Codifícalos con la codificación de URL para evitar posibles vulnerabilidades de inyección de código.
  • HTTPS: Utiliza siempre HTTPS para una comunicación segura. Cifra la solicitud y la respuesta, protegiendo los datos confidenciales de las escuchas.
  • Validación de parámetros: Valida todos los parámetros recibidos en la solicitud GET en el lado del servidor. Esto ayuda a prevenir la manipulación y posibles ataques.
  • Limitación de velocidad: Implementa la limitación de velocidad para evitar ataques DDoS y una carga excesiva del servidor.
  • Evita datos confidenciales: No pases datos confidenciales a través de parámetros GET. Utiliza solicitudes POST para la transmisión segura de dicha información.

Rendimiento

  • Almacenamiento en caché: Aprovecha el almacenamiento en caché del navegador para recursos estáticos como imágenes y scripts. Esto reduce la carga del servidor y mejora los tiempos de carga de la página.
  • Minimiza los parámetros: Mantén el número de parámetros de la cadena de consulta al mínimo. El exceso de parámetros puede disminuir el rendimiento.
  • Compresión Gzip: Habilita la compresión Gzip en el lado del servidor para reducir el tamaño de las respuestas y mejorar los tiempos de transferencia.
  • Usa CDN: Considera usar una red de entrega de contenido (CDN) para distribuir geográficamente tu contenido y mejorar los tiempos de respuesta para los usuarios en diferentes ubicaciones.

Escalabilidad

  • Paginación: Utiliza la paginación para mostrar grandes conjuntos de datos. Esto evita enviar y procesar todo el conjunto de datos a la vez, reduciendo la carga del servidor y mejorando la capacidad de respuesta.
  • Filtrado de recursos: Permite filtrar los resultados en función de los criterios definidos por el usuario para reducir el volumen de datos recuperados y la carga de trabajo del servidor.
  • Solicitudes asíncronas: Utiliza solicitudes asíncronas para obtener recursos no críticos. Esto libera el hilo principal para otras tareas y mejora la experiencia del usuario.
  • Diseño de API: Diseña tu API de manera eficiente para las solicitudes GET. Utiliza convenciones de nomenclatura claras y consistentes para los recursos y parámetros.
  • Sin estado: HTTP es un protocolo sin estado. Asegúrate de que las solicitudes GET permanezcan sin estado. Cualquier solicitud debe devolver el mismo resultado, independientemente de las solicitudes anteriores.

Consejos adicionales:

  • Optimiza las respuestas del servidor: Evita el procesamiento y formateo de datos innecesarios en la respuesta del servidor.
  • Supervisa y analiza tu API: Supervisa el uso de la API y las métricas de rendimiento para identificar cuellos de botella y áreas de mejora.
  • Utiliza bibliotecas y marcos seguros: Utiliza bibliotecas y marcos seguros y bien establecidos para construir y enviar solicitudes HTTP.

Al adherirte a estos métodos recomendados, puedes garantizar que tus solicitudes HTTP GET sean seguras y optimizadas, promoviendo una aplicación web o API resistente y eficaz. Ten en cuenta que estos son principios generales y las necesidades y limitaciones particulares de tu proyecto pueden requerir estrategias alternativas. Siempre prueba a fondo tu implementación para asegurarte de que cumple con tus requisitos.

Conclusión

En esta entrada del blog, hemos aprendido cómo hacer una solicitud HTTP GET en Javascript. También hemos visto cómo Apidog nos ayuda a probar y depurar API web, proporcionándonos una interfaz interactiva y fácil de usar que nos permite enviar solicitudes y recibir respuestas en tiempo real. También hemos visto cómo Apidog nos ayuda a integrar API web con nuestras aplicaciones, proporcionándonos los fragmentos de código y la documentación de cada API web.

button

Esperamos que hayas aprendido algo nuevo y útil. Si quieres aprender más sobre API web, Apidog o Javascript.