Nodo http response
El nodo http response
se utiliza para enviar respuestas HTTP a las solicitudes procesadas por el nodo http in
. Completa el ciclo de procesamiento de la solicitud y devuelve datos al cliente.
Configuraciones para el nodo http response
1. Nombre
Un campo para especificar el nombre del nodo.
El nombre se muestra en el espacio de trabajo y ayuda a identificar fácilmente el nodo.
Si se deja vacío, el nodo se llamará http response
.
Ejemplo:
- Nombre del nodo:
Enviar Respuesta JSON
Campos definidos por el mensaje entrante (msg
)
El nodo http response
utiliza el objeto msg
que se le pasa como entrada para formar la respuesta HTTP. Aquí están los principales parámetros:
-
msg.payload
El contenido de la respuesta. Se envía al cliente en el cuerpo de la respuesta.Ejemplo:
- Para enviar texto:
msg.payload = "¡Hola, Mundo!";
- Para una respuesta JSON:
msg.payload = { status: "ok", value: 42 };
- Para enviar texto:
-
msg.statusCode
El código de estado HTTP de la respuesta. Si este campo no se especifica, se utiliza200 OK
por defecto.Ejemplos de códigos de estado:
200
— Éxito.201
— Recurso creado con éxito.400
— Error del cliente.404
— Recurso no encontrado.500
— Error interno del servidor.
Ejemplo:
msg.statusCode = 404; // Recurso no encontrado
-
msg.headers
Un objeto que define los encabezados de la respuesta HTTP. Permite especificar, por ejemplo, el tipo de contenido, la caché o encabezados personalizados.Ejemplo:
msg.headers = {
"Content-Type": "application/json",
"Cache-Control": "no-cache"
};
Ejemplos de Uso
Ejemplo 1: Enviando una respuesta JSON exitosa
Flujo:
[http in] ---> [function] ---> [http response]
Código para el nodo function
:
msg.payload = { success: true, message: "Solicitud procesada con éxito" };
msg.statusCode = 200;
msg.headers = { "Content-Type": "application/json" };
return msg;
Resultado:
El cliente recibirá la respuesta:
HTTP/1.1 200 OK
Content-Type: application/json
{
"success": true,
"message": "Solicitud procesada con éxito"
}
Ejemplo 2: Manejo de un error
Flujo:
[http in] ---> [function] ---> [http response]
Código para el nodo function
:
msg.payload = { error: "Parámetros de solicitud inválidos" };
msg.statusCode = 400;
msg.headers = { "Content-Type": "application/json" };
return msg;
Resultado:
El cliente recibirá la respuesta:
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"error": "Parámetros de solicitud inválidos"
}
Ejemplo 3: Respuesta vacía con un estado personalizado
Flujo:
[http in] ---> [http response]
Código en el nodo function
antes del nodo http response
:
msg.payload = null; // Cuerpo de respuesta vacío
msg.statusCode = 204; // Sin contenido
return msg;
Resultado:
El cliente recibirá la respuesta:
HTTP/1.1 204 No Content