Node.JS

Petición HTTP GET simple en Node.js con request

Node, JavaScript del lado del servidor, provee un modo para comunicarse a través de http: el módulo http. Sin embargo, este módulo es un poco largo de usar, así que se han creado varios módulos o paquetes y uno de ellos es request.

El módulo de request tiene otra envoltura llamada request-promise, el cual es como request pero usando promesas.

En fin, vamos a ver cómo hacer una petición GET HTTP usando Node y el módulo request. Será un ejemplo sencillo y básico pero que servirá para ejemplos más avanzados.

Instalar node y las dependencias

Primero debemos configurar e instalar Node con NPM, luego ejecutamos:

npm install --save request

Lo que instalará el módulo request, y finalmente lo siguiente para la envoltura:

npm install --save request-promise

Con eso podemos comenzar a trabajar.

Lo que vamos a consumir

Las peticiones GET funcionan para muchas cosas y sirven en muchos escenarios, pero vamos a enfocarnos en consumir un json con la API de JSONPlaceholder.

Vamos a consultar usuarios y luego decodificarlos con JSON para finalmente mostrarlos en la consola. Un ejemplo de respuesta es este:

Ejemplo de respuesta de la API de JsonPlaceholder

Lo vamos a hacer pero con código de JavaScript.

Ahora sí, ejemplo de petición HTTP GET a servidor con JSON en Node.js

Aquí está el código y abajo lo explico:

/**
 * Simple ejemplo de petición GET HTTP con
 * Node.js y el módulo request
 * 
 * @author parzibyte
 */
const request = require("request-promise"),
    RUTA = "https://jsonplaceholder.typicode.com/users";

request({
    uri: RUTA,
    json: true, // Para que lo decodifique automáticamente 
}).then(usuarios => {
    usuarios.forEach(usuario => {
        console.log(`Tenemos a un usuario llamado ${usuario.name} con correo ${usuario.email}`);
    })
});

Por cierto, la ruta es: https://jsonplaceholder.typicode.com/users

Se hace la petición pasándole a request un objeto con algunos ajustes (aquí la documentación). En este caso pasamos la uri, que es la ruta a la que se hará la petición, y también se pasa la opción de json en true para que automáticamente decodifique el JSON.

Cuando se reciben los usuarios, se iteran con forEach y listo, se imprimen sus datos.

Fue un ejemplo sencillo pero que muestra cómo consumir una API JSON con Node.

Te invito a ver más tutoriales de JavaScript y Node.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Ver comentarios

Entradas recientes

Resetear GOOJPRT PT-210 MTP-II (Impresora térmica)

El día de hoy vamos a ver cómo restablecer la impresora térmica GOOJPRT PT-210 a…

1 mes hace

Proxy Android para impresora térmica ESC POS

Hoy voy a enseñarte cómo imprimir en una impresora térmica conectada por USB a una…

1 mes hace

Android – Servidor web con servicio en segundo plano

En este post voy a enseñarte a programar un servidor web en Android asegurándonos de…

1 mes hace

Cancelar trabajo de impresión con C++

En este post te quiero compartir un código de C++ para listar y cancelar trabajos…

2 meses hace

Copiar bytes de Golang a JavaScript con WebAssembly

Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…

3 meses hace

Imprimir PDF con Ghostscript en Windows de manera programada

Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…

3 meses hace