¿Cómo realizar solicitudes HTTP con el módulo de solicitud de Node.js?

Como Realizar Solicitudes Http Con El Modulo De Solicitud De Node Js



Las solicitudes HTTP son la parte más importante e integral de cualquier aplicación interactiva; estas solicitudes manejan la transferencia de datos entre el lado del cliente y el servidor. Si el usuario requiere datos sobre una consulta específica, enviará una solicitud y la respuesta de esta solicitud que contiene los datos requeridos se envía desde el servidor. Todo este procedimiento depende o utiliza el “ HTTP 'solicitudes que se pueden crear utilizando módulos externos como' pedido ”.

Esta guía explica el procedimiento para realizar solicitudes HTTP con el módulo de solicitud de Node.js cubriendo las siguientes secciones:

¿Cómo realizar solicitudes HTTP con el módulo de solicitud de Node.js?







Alternativas del módulo de solicitud de Node.js



Conclusión



¿Cómo realizar solicitudes HTTP utilizando el módulo de solicitud de Node.js?

El ' pedido El módulo 'es el módulo más sencillo que ayuda a enviar o recuperar solicitudes HTTP. Este módulo es demasiado simple y fácil de entender, pero ofrece muy poca libertad a los desarrolladores. Además, el desarrollador no puede modificar fácilmente su funcionalidad básica ni mejorar las funciones proporcionadas.





Nota: Aunque el ' pedido 'Es un buen módulo. Sin embargo, sus creadores decidieron dejar de trabajar en este módulo y quedó completamente obsoleto el 11 de febrero de 2020.

Sin embargo, si aún desea tener una idea sobre la implementación de este ' pedido ”Módulo y luego visite los pasos que se mencionan a continuación.



Paso 1: Instalar el módulo 'solicitud' e inicializar el proyecto Node.js

Comience inicializando el ' npm ”paquetes dentro del directorio deseado para crear un proyecto Node.js ejecutando el comando:

inicio npm - y

El resultado muestra que 'npm' se ha inicializado correctamente en el directorio proporcionado:

Luego, instale el requerido ' pedido ”módulo ejecutando el comando:

solicitud de instalación npm

El resultado muestra que la instalación se ha completado, pero como este módulo está obsoleto, es por eso que 'npm' envió la advertencia obsoleta:

Paso 2: Insertar código ficticio

Crear un ' .js ”Escriba el archivo dentro del directorio del proyecto Node.js, es el archivo en el que los programas se insertan y ejecutan más adelante. Luego, inserte las siguientes líneas de código para ilustrar la implementación práctica de ' pedido 'Módulo, como se muestra a continuación:

constante objetoreq = requerir ( 'pedido' )

dejar URL base = 'https://jsonplaceholder.typicode.com/todos/6' ;

objetoreq ( URL base, ( problemas, contenido ) => {

  si ( asuntos ) consola. registro ( asuntos )

consola. registro ( contenido ) ;

} ) ;

La explicación del bloque de código anterior es la siguiente:

  • Primero el ' pedido 'El módulo ha sido importado y su objeto se almacena en una nueva variable llamada' objetoreq ”.
  • A continuación, la URL de algún archivo JSON en línea cuyo contenido debe recuperarse se pasa como valor para ' URL base ”variable nombrada.
  • Entonces el ' objetoreq 'La variable se invoca como constructor y la variable ' URL base ”se pasa como primer parámetro y la función de devolución de llamada como segundo parámetro.
  • Dentro de la función de devolución de llamada, el ' si La declaración 'se utiliza para mostrar los errores ocurridos y los datos recuperados también se muestran en la ventana de la consola.

Paso 3: Ejecución

Para ejecutar el código anterior, ejecute el archivo que lo contiene llamado ' proApp.js ”en nuestro caso usando el comando:

nodo proApp. js

El resultado después de la ejecución muestra que los datos especificados se han recuperado y mostrado en la consola:

Alternativas del módulo de solicitud de Node.js

Debido a la desaprobación del “ pedido ”, hay muchos módulos externos nuevos que se pueden utilizar para realizar funciones similares. Estos módulos alternativos se detallan a continuación:

Alternativas Descripción
búsqueda de nodo Es un módulo basado en promesa o flujo que trae un método window.fetch() en Node.js.
http El ' http El módulo 'es el módulo predeterminado proporcionado por Node.js y proporciona varios métodos para interactuar con servidores http al tiempo que brinda más libertad.
axios Basado puramente en promesas y transmisiones para realizar solicitudes HTTP a través del navegador tanto desde el lado del servidor como del cliente.
consiguió Es súper amigable para los humanos y la biblioteca más poderosa para solicitudes HTTP.
superagente Basado en encadenamiento y promesas al mismo tiempo que brinda soporte para muchos clientes HTTP de alto nivel. También tiene una curva de aprendizaje baja.
doblado Es un HTTP funcional que devuelve una función de tipo asíncrono.
hacer-buscar-suceder Una forma mejorada de ' búsqueda de nodo ”módulo. Ahora incluye “agrupación de solicitudes”, “soporte de caché” y mucho más.
aguja Este módulo es el módulo más claro y avanzado. Se utiliza principalmente para recuperar datos mediante el envío de solicitudes a fuentes de terceros.
pequeño-json-http Cliente HTTP minimalista utilizado para realizar las cargas útiles JSON.

Ahora, realicemos solicitudes HTTP mediante la utilización de algunos módulos discutidos anteriormente.

Método 1: realizar solicitudes HTTP utilizando el módulo HTTP predeterminado

El ' http 'Es un módulo predeterminado, ya que se instala automáticamente al momento de inicializar el proyecto node.js ejecutando el comando '. inicio npm ' o ' npm init -y ”. Como ya hemos creado un proyecto node.js, nos saltamos los pasos de inicialización demostrados al comienzo de este artículo y nos sumergimos directamente en la creación de solicitudes http utilizando el módulo 'http'.

En el siguiente fragmento de código, se creó el servidor y, como respuesta, se envía el mensaje ficticio al servidor:

constante httpObj = requerir ( 'http' ) ;

constante servidor local = httpObj. crearservidor ( ( solicitar respuesta ) => {

respuesta. escribir ( 'Bienvenido a la página de Twitter' ) ;

respuesta. fin ( ) ;

} ) ;

servidor local. escuchar ( 8080 , ( ) => {

consola. registro ( 'El servidor se inició en el puerto número 8080'. ) ;

} ) ;

En el bloque de código anterior:

  • Primero el ' http 'El módulo se ha importado dentro del archivo actual y su objeto se almacena en una nueva variable llamada' httpObj ”.
  • A continuación, el servidor llamado “ servidor local ”se crea invocando el “ crearServidor() ”Método y pasando la función de devolución de llamada como parámetro.
  • Dentro de esta función, invoca un “ escribir() ”Método y asígnele un mensaje ficticio que se muestra en el servidor. Además, cierre la sesión de respuesta invocando el botón ' fin() ”, el mensaje ficticio aleatorio también se puede insertar dentro del paréntesis del método.
  • Después de eso, haga que este servidor se ejecute sobre el host local que tiene el número de puerto ' 8080 ” invocando el “ escuchar() ' método.

Ejecute el código anterior que contiene el archivo ejecutando el siguiente comando:

nodo < Nombre del archivo. js >

El resultado generado confirma que las solicitudes HTTP se han realizado a través del valor predeterminado ' http ”módulo:

Método 2: realizar una solicitud HTTP utilizando el módulo Axios externo

El ' axios ”es el módulo más popular y utilizado cuando se trata de realizar solicitudes HTTP en un entorno de tiempo real. Para utilizar este módulo, el desarrollador primero debe instalarlo ejecutando el siguiente comando:

npm instala axios

Después de ejecutar el comando, la terminal aparece así:

Ahora, echemos un vistazo a un ejemplo en el que el ' CONSEGUIR 'La solicitud HTTP se utilizará para recuperar los datos de una API aleatoria. Luego, los datos recibidos también se muestran en la consola:

constante axiosObj = requerir ( 'axios' ) ;

// URL de la API de marcador de posición JSON para seleccionar solo una parte de los datos que tengan un ID de 5

constante URL de API = 'https://jsonplaceholder.typicode.com/todos/5' ;

//Inicializando la solicitud GET

axiosObj. conseguir ( URL de API )

  . entonces ( respuesta => {

consola. registro ( 'El estado de la respuesta de la API es:' , respuesta. estado ) ;

consola. registro ( 'Los datos recibidos de API como respuesta a la solicitud:' , respuesta. datos ) ;

} )

  . atrapar ( error => {

consola. error ( 'Se ha producido el error:' , error ) ;

} ) ;

La explicación del bloque de código anterior se indica a continuación:

  • Primero, importe el ' axios 'biblioteca y almacena su instancia en la variable llamada' axiosObj ”que actúa como un objeto de la biblioteca “axios”.
  • A continuación, cree una variable ' URL de API ”y almacene la URL de la API de la que se deben recuperar los datos. En nuestro caso, la URL es “ https://jsonplaceholder.typicode.com/todos/5 'porque queremos recuperar datos que tienen un ID de' 5 ”.
  • Ahora, con la ayuda de “ axiosObj ' invocar el ' conseguir() 'Método y pasar el' URL de la aplicación ”variable dentro del paréntesis de este método.
  • Adjunta ' entonces() 'Método con el' conseguir() 'Método y cree una función de flecha anónima que contenga un único parámetro de' respuesta ”.
  • Este ' respuesta 'actúa como un objeto que contiene los valores o datos devueltos en respuesta a la solicitud a través del' conseguir() ' método.
  • Con la ayuda de este “ respuesta ”, recupere el estado de la solicitud y el contenido adjuntando el “ estado ' y ' datos ”palabras clave al lado.
  • Finalmente, adjunte el “ atrapar() 'Método que muestra errores si alguno ocurrió durante la ejecución del programa.

Ahora, compila el código anterior en el entorno Node.js usando el siguiente comando en la terminal:

nodo < Nombre del archivo >

El resultado mostrado muestra que los datos solicitados se recuperaron de la fuente proporcionada como respuesta y se muestran en la ventana de la consola:

Se trata de realizar solicitudes HTTP con el módulo de solicitud de Node.js y una descripción general rápida de sus alternativas.

Conclusión

Para realizar una solicitud HTTP a través del “ pedido ”, la URL requerida desde donde se realizará la búsqueda. Luego, se crea la instancia del módulo 'solicitud' y la URL seleccionada para la cual se debe implementar la solicitud HTTP se pasa como primer parámetro. La función de devolución de llamada requerida también se utiliza para verificar si se han producido errores y recuperar el contenido o la respuesta de la solicitud HTTP. Esta guía ha explicado el proceso de realizar solicitudes HTTP utilizando el módulo de solicitud.