¿Cómo crear una solicitud de publicación diferente usando Node.js?

Una solicitud en. Por ejemplo, la carga de archivos es un ejemplo común de una solicitud posterior. Hay muchos enfoques para realizar una solicitud HTTP POST en Node.js. Varias bibliotecas de código abierto también están disponibles para realizar cualquier tipo de solicitud HTTP. 

Hay tres enfoques para crear diferentes requests de publicación que se analizan a continuación.

  1. Uso del módulo de agujas
  2. Usando el módulo axioma
  3. Usando el módulo https

Enfoque 1: una de las formas de realizar una solicitud HTTP POST en Node.js es mediante el uso de la biblioteca Needle . Needle es un cliente HTTP para realizar requests HTTP en Node.js, datos de formulario de varias partes (por ejemplo, carga de archivos), análisis automático de XML y JSON, etc.

Estructura del proyecto:

Módulo de instalación:

npm install needle

Índice.js

Javascript

//Importing needle module
const needle = require('needle');
  
// Data to be sent
const data = {
    name: 'geeksforgeeks',
    job: 'Content Writer',
    topic:'Node.js'
};
  
// Making post request
needle('post', 'https://requires.in/api/usersdata', 
    data, {json: true})
    .then((res) => {
  
        // Printing the response after request
        console.log('Body: ', res.body);
    }).catch((err) => {
  
        // Printing the err
        console.error(err.Message);
    }
);

Comando de ejecución:

node index.js

Salida de la consola:

Enfoque 2: otra biblioteca que se puede usar es Axios . Este es un módulo popular de node.js que se usa para realizar requests HTTP y es compatible con todos los navegadores más recientes. También es compatible con la sintaxis async/await para realizar una solicitud POST.

Módulo de instalación:

npm install axios

Índice.js

Javascript

// Importing the axios module
const axios = require('axios');
  
// Data to be sent
const data = {
    name: 'geeksforgeeks',
    job: 'Content Writer',
    topic: 'Node.js'
};
  
const addUser = async () => {
    try {
  
        // Making post request 
        const res = await axios.post(
'https://reqres.in/api/usersdata', data);
  
        // Printing the response data   
        console.log('Body: ', res.data);
    } catch (err) {
  
        // Printing the error
        console.error(err.Message);
    }
};

Comando de ejecución:

node index.js

Salida de la consola:

Enfoque 3: también es posible realizar una solicitud POST utilizando el   módulo HTTPS integrado de Node.js. Este módulo se utiliza para enviar los datos en un formato encriptado

Índice.js

Javascript

// Importing https module
const https = require('https');
  
// Converting data in JSON format
const data = JSON.stringify({
    name: 'geeksforgeeks',
    job: 'Content Writer',
    topic:'Node.js'
});
  
// Setting the configuration for
// the request
const options = {
    hostname: 'reqres.in',
    path: '/api/users',
    method: 'POST'
};
  
// Sending the request
const req = https.request(options, (res) => {
    let data = '';
   
    res.on('data', (chunk) => {
        data += chunk;
    });
  
    // Ending the response 
    res.on('end', () => {
        console.log('Body:', JSON.parse(data));
    });
     
}).on("error", (err) => {
    console.log("Error: ", err.message);
});
  
// Write data to request body
req.write(data);
req.end();

Comando de ejecución:

node index.js

Salida de la consola:
 

Publicación traducida automáticamente

Artículo escrito por naman9071 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *