Nodo http request
El nodo http request está diseñado para realizar solicitudes HTTP a servicios web externos o API. Soporta varios métodos HTTP, formas de transmisión de datos, autenticación y gestión flexible de solicitudes y respuestas.
Configuración del nodo http request

1. Nombre
Campo para especificar el nombre del nodo.
El nombre se muestra en el área de trabajo y ayuda a identificar fácilmente el nodo.
Si se deja vacío, el nodo se llamará http request.
Ejemplo:
- Nombre del nodo:
Obtener Datos del Clima
2. Método
Método HTTP que se utilizará para la solicitud. La elección del método depende del tipo de operación que se necesite realizar.
Métodos disponibles:
GET: Obtener datos.POST: Enviar datos.PUT: Actualizar datos.DELETE: Eliminar datos.HEAD: Obtener encabezados de respuesta.
Ejemplo:
- Método:
POST
3. Enlace
Campo para especificar una URL estática a la que se enviará la solicitud.
Si la dirección necesita ser establecida dinámicamente, se puede pasar en msg.url.
Ejemplo:
- Enlace:
https://api.example.com/data
4. Datos
Define cómo se agregarán los datos de entrada a la solicitud HTTP. Las siguientes opciones están disponibles:
-
Ignorar (por defecto):
Los datos de entrada no se utilizarán en la solicitud. El campomsg.payload, si existe, será ignorado.Ejemplo:
Simsg.payloadcontiene un objeto JSON, no se incluirá en la solicitud.
-
Agregar a parámetros de consulta:
Los datos demsg.payloadse convertirán en parámetros de la cadena de consulta (Query Parameters) y se agregarán a la URL.Ejemplo:
Simsg.payloadcontiene:{
"key1": "value1",
"key2": "value2"
}Si el Enlace se especifica como
http://example.com/api, la solicitud final será:
GET http://example.com/api?key1=value1&key2=value2.
-
Enviar como cuerpo de la solicitud:
Los datos demsg.payloadse enviarán en el cuerpo de la solicitud. Esta opción es adecuada para los métodosPOSTyPUT, donde los datos a menudo se envían en el cuerpo.Ejemplo:
Simsg.payloadcontiene:{
"name": "John Doe",
"email": "john.doe@example.com"
}Si el método de la solicitud es
POST, los datos se enviarán en el cuerpo de la solicitud con el contenido correspondiente.
5. Devolver
Define en qué formato el nodo procesará la respuesta del servidor.
Opciones:
- Cadena: La respuesta se convierte en una cadena (por defecto).
- Objeto JSON: Si la respuesta del servidor está en formato JSON, se convierte automáticamente en un objeto JavaScript.
- Buffer Binario: La respuesta se devuelve como un buffer binario (útil para datos binarios, como imágenes o archivos).
Ejemplo:
- Si se elige
Objeto JSON, la respuesta:Se convierte en:{"status": "ok", "value": 42}msg.payload = { status: "ok", value: 42 };
6. Usar Autenticación
La casilla activa la autenticación incorporada (por defecto desactivada). Cuando está activada, aparece un campo Tipo con el método de autenticación (por defecto basic):
basic
- Nombre de usuario: Nombre de usuario.
- Contraseña: Contraseña.
bearer
- Contraseña: Token de acceso.
digest
- Nombre de usuario: Nombre de usuario.
- Contraseña: Contraseña.
Datos de entrada
El nodo http request acepta un objeto de mensaje msg con los parámetros:
- msg.url: URL para la solicitud (si no se especifica en la configuración del nodo).
- msg.method: Método HTTP (si no se especifica en la configuración del nodo).
- msg.payload: Cuerpo de la solicitud (se utiliza para los métodos
POST,PUT). - msg.headers: Encabezados de la solicitud HTTP (objeto).
Datos de salida
El nodo devuelve un objeto msg con información sobre la solicitud realizada:
- msg.payload: Datos de la respuesta del servidor.
- msg.statusCode: Código de estado HTTP de la respuesta (por ejemplo,
200o404). - msg.headers: Encabezados de la respuesta.
- msg.responseUrl: URL a la que se realizó la solicitud.
- msg.error: Descripción del error (si la solicitud falló).
Ejemplos de uso
Ejemplo 1: Realización de una solicitud GET
Configuración del nodo:
- Método:
GET - Enlace:
https://api.weatherapi.com/v1/current.json?key=API_KEY&q=London
Flujo:
[inject] ---> [http request] ---> [debug]
Resultado: El nodo devolverá un JSON con el clima actual.
Ejemplo 2: Envío de datos a través de POST
Configuración del nodo:
- Método:
POST - Enlace:
https://api.example.com/devices - Datos:
Enviar como cuerpo de la solicitud
Flujo:
[function] ---> [http request] ---> [debug]
Código en el nodo function:
msg.payload = {
deviceId: "sensor123",
status: "active"
};
msg.headers = { "Content-Type": "application/json" };
return msg;
Resultado: Los datos se enviarán y el nodo devolverá la respuesta del servidor.
Ejemplo 3: URL dinámica y autenticación
Configuración del nodo:
- Enlace: (dejar vacío)
Flujo:
[function] ---> [http request] ---> [debug]
Código en el nodo function:
msg.url = "https://api.example.com/user/123";
msg.headers = { Authorization: "Bearer YOUR_TOKEN" };
return msg;
Resultado: El nodo realizará la solicitud a la URL especificada con el token de autenticación.