Cómo enviar una solicitud PUT en NodeJs: Una guía paso a paso

Aprende a hacer peticiones PUT en Node.js con varios métodos y librerías. También, cómo gestionar errores y respuestas del servidor, y cómo probar tu petición PUT con Apidog.

Daniel Costa

Daniel Costa

8 May 2025

Cómo enviar una solicitud PUT en NodeJs: Una guía paso a paso

Si estás trabajando con APIs, es posible que necesites hacer una solicitud put en Node.js. Una solicitud put es una forma de actualizar o modificar un recurso existente en un servidor. Por ejemplo, es posible que desees cambiar el nombre o el correo electrónico de un usuario en una base de datos. En esta publicación de blog, te mostraré cómo hacer una solicitud put en Node.js utilizando diferentes métodos y herramientas como Apidog.

Al final de esta publicación de blog, podrás hacer una solicitud put en Node.js con confianza y facilidad. ¡Empecemos!

¿Qué es una solicitud Put y cuándo usarla?

Una solicitud put es una de las cuatro solicitudes HTTP comunes, junto con get, post y delete. Una solicitud put se utiliza para actualizar o reemplazar un recurso existente en un servidor. Por ejemplo, si tienes un usuario con el id de 1 y el nombre de Alice, y quieres cambiar su nombre a Bob, puedes hacer una solicitud put al servidor con el nuevo nombre.

Una solicitud put tiene dos componentes principales: una URL y un cuerpo. La URL es la dirección del recurso que deseas actualizar, y el cuerpo son los datos que deseas enviar al servidor. Por ejemplo, si deseas actualizar el usuario con el id de 1, tu URL podría verse así:

https://example.com/api/users/1

Y tu cuerpo podría verse así:

{ "name": "Bob" }

El cuerpo puede estar en diferentes formatos, como JSON, XML o datos de formulario. En esta publicación de blog, utilizaremos JSON como el formato del cuerpo.

Para hacer una solicitud put, necesitas especificar el método, la URL y el cuerpo en tu código. También necesitas establecer algunos encabezados, como el content-type y la autorización. El encabezado content-type le dice al servidor en qué formato está el cuerpo, y el encabezado authorization proporciona tus credenciales para acceder al recurso. Por ejemplo, si estás utilizando JSON como el formato del cuerpo, y necesitas un token para acceder al recurso, tus encabezados podrían verse así:

{ "Content-Type": "application/json", "Authorization": "Bearer <your-token>" }

En las siguientes secciones, veremos cómo hacer una solicitud put en Node.js utilizando diferentes métodos y bibliotecas.

Comprender NodeJs

Node.js es un entorno de tiempo de ejecución de JavaScript que te permite ejecutar código JavaScript fuera de un navegador web. Node.js se basa en el motor de JavaScript V8 de Google Chrome, y se utiliza para construir aplicaciones web, especialmente aquellas que son intensivas en datos y en tiempo real. Node.js también tiene una gran biblioteca de módulos y paquetes que puedes utilizar para agregar funcionalidad a tus proyectos. Algunos de los beneficios de Node.js son:

NodeJs Website

Cómo hacer una solicitud Put utilizando el módulo Http nativo

Una forma de hacer una solicitud put en Node.js es utilizar el módulo http nativo. El módulo http es un módulo central que proporciona funcionalidad de bajo nivel para hacer solicitudes y respuestas HTTP. Para utilizar el módulo http, necesitas requerirlo en tu código:

const http = require('http');

Para hacer una solicitud put utilizando el módulo http, necesitas utilizar el método http.request(). El método http.request() toma dos argumentos: un objeto de opciones y una función de callback. El objeto de opciones contiene los detalles de la solicitud, como el método, la URL, los encabezados y el cuerpo. La función de callback se ejecuta cuando la solicitud se completa, y recibe un objeto de respuesta como argumento. El objeto de respuesta contiene el código de estado, los encabezados y los datos del servidor.

Por ejemplo, si deseas hacer una solicitud put para actualizar el usuario con el id de 1, tu código podría verse así:

const http = require('http');

// Define the options object
const options = {
  method: 'PUT',
  hostname: 'example.com',
  path: '/api/users/1',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer <your-token>'
  }
};

// Define the body
const body = JSON.stringify({ name: 'Bob' });

// Create the request
const req = http.request(options, (res) => {
  // Handle the response
  console.log(`Status code: ${res.statusCode}`);
  console.log(`Headers: ${JSON.stringify(res.headers)}`);
  let data = '';
  res.on('data', (chunk) => {
    // Concatenate the data chunks
    data += chunk;
  });
  res.on('end', () => {
    // Parse the data as JSON
    data = JSON.parse(data);
    console.log(`Data: ${JSON.stringify(data)}`);
  });
});

// Handle the error
req.on('error', (err) => {
  console.error(`Error: ${err.message}`);
});

// Write the body to the request
req.write(body);

// End the request
req.end();

El método http.request() devuelve un objeto de solicitud, que puedes utilizar para escribir el cuerpo en la solicitud y finalizar la solicitud. También puedes utilizar el objeto de solicitud para manejar cualquier error que pueda ocurrir durante la solicitud.

El objeto de respuesta es una instancia de la clase http.IncomingMessage, que es un flujo legible. Esto significa que puedes utilizar el método on() para escuchar diferentes eventos, como data y end. El evento data se emite cuando se recibe un fragmento de datos, y el evento end se emite cuando la respuesta ha terminado. Puedes utilizar estos eventos para concatenar los fragmentos de datos y analizarlos como JSON.

El objeto de respuesta también tiene algunas propiedades, como statusCode y headers, que puedes utilizar para obtener el código de estado y los encabezados del servidor.

Otra forma de hacer una solicitud put en Node.js es utilizar la popular biblioteca request. La biblioteca request es un módulo de terceros que proporciona una forma sencilla y conveniente de hacer solicitudes HTTP. Para utilizar la biblioteca request, necesitas instalarla utilizando npm:

npm install request

Y luego requerirla en tu código:

const request = require('request');

Para hacer una solicitud put utilizando la biblioteca request, necesitas utilizar el método request.put(). El método request.put() toma dos argumentos: una URL y una función de callback. La URL puede ser una cadena o un objeto que contenga los detalles de la solicitud, como el método, los encabezados y el cuerpo. La función de callback se ejecuta cuando la solicitud se completa, y recibe tres argumentos: un error, una respuesta y un cuerpo. El argumento de error es nulo si la solicitud es exitosa, y contiene un objeto de error si la solicitud falla. El argumento de respuesta es un objeto que contiene el código de estado, los encabezados y los datos del servidor. El argumento del cuerpo es una cadena o un búfer que contiene los datos del servidor.

Cómo manejar errores y respuestas del servidor

Cuando haces una solicitud put en Node.js, debes estar preparado para manejar cualquier error y respuesta que pueda provenir del servidor. Los errores pueden ocurrir debido a varias razones, como problemas de red, problemas del servidor o datos no válidos. Las respuestas pueden variar dependiendo del código de estado, los encabezados y los datos del servidor.

Para manejar errores, necesitas utilizar el argumento de error o el método catch(), dependiendo del método o la biblioteca que estés utilizando. El argumento de error o el método catch() recibirá un objeto de error, que puedes utilizar para obtener el mensaje, el código y la información de la solicitud. También puedes utilizar el método console.error() para registrar el error en la consola.

Para manejar las respuestas, necesitas utilizar el argumento de respuesta o el método then(), dependiendo del método o la biblioteca que estés utilizando. El argumento de respuesta o el método then() recibirá un objeto de respuesta, que puedes utilizar para obtener el código de estado, los encabezados y los datos del servidor. También puedes utilizar el método console.log() para registrar la respuesta en la consola.

El código de estado es un número de tres dígitos que indica el resultado de la solicitud. El código de estado se puede dividir en cinco categorías:

El código de estado más común para una solicitud put es 200, que significa OK. Esto significa que la solicitud fue exitosa y el recurso fue actualizado. Sin embargo, dependiendo de la implementación del servidor, también podrías recibir otros códigos de estado, como 201, que significa Creado, o 204, que significa Sin Contenido. Siempre debes verificar el código de estado antes de procesar los datos de la respuesta.

Los encabezados son un conjunto de pares clave-valor que proporcionan información adicional sobre la solicitud y la respuesta. Los encabezados pueden contener información como el content-type, el content-length, la fecha, el servidor y la autorización. Siempre debes verificar los encabezados antes de procesar los datos de la respuesta, ya que podrían afectar la forma en que analizas o muestras los datos.

Los datos son el contenido real de la respuesta, que puede estar en diferentes formatos, como JSON, XML o texto plano. Los datos pueden contener información como el recurso actualizado, el mensaje o el error. Siempre debes analizar los datos de acuerdo con el formato especificado por el encabezado content-type, y manejar cualquier error o mensaje que pueda estar incluido en los datos.

Cómo probar tu solicitud Put utilizando una herramienta llamada Apidog

Una forma de probar tu solicitud put en Node.js es utilizar una herramienta llamada Apidog. Apidog es una herramienta basada en la web que te permite crear y probar APIs de una manera sencilla e interactiva. Puedes utilizar apidog para crear servidores simulados, definir endpoints, enviar solicitudes y ver respuestas. También puedes utilizar apidog para generar documentación y fragmentos de código para tus APIs.

button

Aquí te mostramos cómo puedes utilizar Apidog para probar tu solicitud PUT:

  1. Abre Apidog y crea una nueva solicitud.
Selecciona Nueva solicitud

2. Establece el método de solicitud en PUT.

Choose put method

3. Ingresa la URL del recurso que deseas actualizar. Agrega cualquier encabezado o parámetro adicional que desees incluir y luego haz clic en el botón "Enviar" para enviar la solicitud.

Enter the URL and addional parameters

4. Verifica que la respuesta sea la que esperabas.

View the response

Conclusión

En esta publicación de blog, aprendiste cómo hacer una solicitud put en Node.js utilizando diferentes métodos y bibliotecas. También aprendiste cómo manejar errores y respuestas del servidor, y cómo probar tu solicitud put utilizando una herramienta llamada apidog. Puedes utilizar estas habilidades para actualizar o modificar cualquier recurso en un servidor utilizando Node.js.

button

Practica el diseño de API en Apidog

Descubre una forma más fácil de construir y usar APIs