Cómo enviar solicitudes PUT con datos JSON: Una guía completa

Aprende a enviar peticiones PUT con JSON usando Apidog. Guía completa para actualizar recursos vía API con ejemplos en JavaScript, Python y Java. ¡Optimiza tus interacciones API!

Daniel Costa

Daniel Costa

8 May 2025

Cómo enviar solicitudes PUT con datos JSON: Una guía completa

Enviar datos a un servidor es una tarea común para los desarrolladores web, y existen varios métodos para hacerlo. Una de las formas más eficientes de actualizar los recursos existentes en un servidor es mediante la solicitud PUT. Hoy, profundizaremos en cómo enviar solicitudes PUT con datos JSON, asegurándonos de que tengas una comprensión clara del proceso. Además, te mostraremos cómo aprovechar herramientas como API y Apidog para optimizar tu flujo de trabajo.

💡
Pero antes de comenzar, si estás buscando una herramienta para simplificar tus interacciones con la API, descarga Apidog gratis y sigue los pasos mientras exploramos los entresijos de las solicitudes PUT.
button

Comprensión de las solicitudes PUT

Para empezar, aclaremos qué es una solicitud PUT. En el mundo de las API, los métodos HTTP se utilizan para realizar acciones en los recursos. PUT es uno de estos métodos, y está diseñado específicamente para actualizar un recurso existente o crear uno nuevo si no existe.

Los conceptos básicos de las solicitudes PUT

Imagina que estás trabajando con un sistema de perfiles de usuario. Podrías tener un recurso de usuario con detalles como nombre, correo electrónico y dirección. Si deseas actualizar la dirección del usuario, usarías una solicitud PUT.

Aquí está la estructura general de una solicitud PUT:

¿Por qué JSON?

JSON (JavaScript Object Notation) es el formato más común para enviar datos a través de la web. Es ligero, fácil de leer y compatible con la mayoría de los lenguajes de programación. Cuando envías una solicitud PUT con datos JSON, esencialmente estás actualizando el recurso con nueva información formateada como un objeto JSON.

Configuración para las solicitudes PUT

Antes de sumergirnos en la codificación, necesitas tener algunas cosas en su lugar:

  1. Punto final de la API: La URL donde enviarás tu solicitud PUT.
  2. Clave de API (si es necesario): Algunas API requieren autenticación.
  3. Herramienta o biblioteca: Para enviar solicitudes HTTP, como Apidog, Postman o un lenguaje de programación con capacidades HTTP.

Herramientas que necesitarás

Si bien puedes usar cualquier cliente HTTP, Apidog es una herramienta fantástica que simplifica las pruebas y el desarrollo de API. Si aún no lo has hecho, descarga Apidog gratis e instálalo en tu máquina. Te facilitará la vida al tratar con solicitudes PUT.

Envío de solicitudes PUT con Apidog

Comencemos enviando una solicitud PUT usando Apidog. Sigue estos pasos:

  1. Abrir Apidog: Inicia la aplicación y crea una nueva solicitud.
Selecciona Nueva solicitud

2. Establecer el método en PUT: Elige PUT en el menú desplegable.

Choose put method

3. Introduce la URL: Escribe el punto final de la API.

Enter the URL and addional parameters

4. Añade datos JSON: En la sección del cuerpo, introduce tus datos JSON.

Aquí tienes un ejemplo de una solicitud PUT para actualizar la dirección de un usuario:

{
    "name": "John Doe",
    "email": "john.doe@example.com",
    "address": "1234 Main St, Anytown, USA"
}

Cuando envíes estos datos, el servidor actualizará el recurso de usuario con la nueva información de la dirección.

Add JSON Data

5. Enviar la solicitud: Haz clic en el botón "Enviar" y revisa la respuesta.

Send the Request

Escribir solicitudes PUT en código

Si bien las herramientas como Apidog son excelentes para las pruebas, a menudo necesitarás enviar solicitudes PUT directamente desde el código de tu aplicación. Veamos cómo hacer esto en algunos lenguajes de programación populares.

Usar JavaScript (Fetch API)

La Fetch API de JavaScript es una forma moderna de realizar solicitudes HTTP. Aquí tienes cómo enviar una solicitud PUT con datos JSON:

const url = 'https://api.example.com/user/1';
const data = {
    name: 'John Doe',
    email: 'john.doe@example.com',
    address: '1234 Main St, Anytown, USA'
};

fetch(url, {
    method: 'PUT',
    headers: {
        'Content-Type': 'application/json'
    },
    body: JSON.stringify(data)
})
.then(response => response.json())
.then(data => console.log('Success:', data))
.catch(error => console.error('Error:', error));

Usar la biblioteca Requests de Python

La biblioteca Requests de Python es otra excelente herramienta para realizar solicitudes HTTP. Aquí tienes cómo hacerlo:

import requests
import json

url = 'https://api.example.com/user/1'
data = {
    'name': 'John Doe',
    'email': 'john.doe@example.com',
    'address': '1234 Main St, Anytown, USA'
}

response = requests.put(url, headers={'Content-Type': 'application/json'}, data=json.dumps(data))

print(response.status_code)
print(response.json())

Usar Java (HttpURLConnection)

HttpURLConnection de Java es un poco más detallado, pero hace el trabajo:

import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;

public class PutRequestExample {
    public static void main(String[] args) {
        try {
            URL url = new URL("https://api.example.com/user/1");
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setRequestMethod("PUT");
            connection.setRequestProperty("Content-Type", "application/json; utf-8");
            connection.setDoOutput(true);

            String jsonInputString = "{\"name\": \"John Doe\", \"email\": \"john.doe@example.com\", \"address\": \"1234 Main St, Anytown, USA\"}";

            try (OutputStream os = connection.getOutputStream()) {
                byte[] input = jsonInputString.getBytes(StandardCharsets.UTF_8);
                os.write(input, 0, input.length);
            }

            int responseCode = connection.getResponseCode();
            System.out.println("Response Code: " + responseCode);
            // Read the response (if needed)
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Manejo de respuestas

Cuando envías una solicitud PUT, obtendrás una respuesta del servidor. Esta respuesta te informará si tu solicitud fue exitosa o si hubo algún error. Aquí tienes algunos códigos de respuesta comunes:

Ejemplo de manejo de respuestas en JavaScript

Revisemos nuestro ejemplo de JavaScript y agreguemos el manejo de respuestas:

fetch(url, {
    method: 'PUT',
    headers: {
        'Content-Type': 'application/json'
    },
    body: JSON.stringify(data)
})
.then(response => {
    if (!response.ok) {
        throw new Error('Network response was not ok ' + response.statusText);
    }
    return response.json();
})
.then(data => console.log('Success:', data))
.catch(error => console.error('Error:', error));

Consejos para enviar solicitudes PUT con datos JSON

Ahora que conoces los conceptos básicos, aquí tienes algunos consejos para asegurarte de que tus solicitudes PUT sean efectivas:

Valida tu JSON

Antes de enviar tus datos JSON, valídalos para asegurarte de que estén formateados correctamente. Hay muchos validadores JSON en línea disponibles.

Usa los encabezados adecuados

Siempre establece el encabezado Content-Type en application/json cuando envíes datos JSON. Esto le dice al servidor que espere JSON en el cuerpo de la solicitud.

Maneja los errores con elegancia

Implementa el manejo de errores en tu código para gestionar posibles problemas como errores de red o respuestas no válidas. Esto hará que tu aplicación sea más robusta.

Prueba con herramientas

Usa herramientas como Apidog para probar tus solicitudes PUT antes de implementarlas en tu código. Esto puede ahorrarte mucho tiempo de depuración.

Conclusión

Enviar solicitudes PUT con datos JSON es una habilidad fundamental para cualquier desarrollador web. Ya sea que estés actualizando perfiles de usuario, modificando recursos o sincronizando datos, comprender cómo elaborar estas solicitudes es crucial.

Recuerda descargar Apidog gratis para que tus pruebas de API sean más fluidas y eficientes. Con las herramientas y el conocimiento adecuados, estarás bien equipado para manejar cualquier interacción con la API.

¡Feliz codificación!

button

Practica el diseño de API en Apidog

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