Pular para o conteúdo principal

Node http response

O nó http response é usado para enviar respostas HTTP a solicitações processadas pelo nó http in. Ele completa o ciclo de processamento da solicitação e retorna dados de volta ao cliente.


Configurações para o nó http response

IMG2

1. Nome

Um campo para especificar o nome do nó.
O nome é exibido no espaço de trabalho e ajuda a identificar facilmente o nó.
Se deixado em branco, o nó será chamado de http response.

Exemplo:

  • Nome do nó: Enviar Resposta JSON

Campos definidos pela mensagem de entrada (msg)

O nó http response usa o objeto msg passado a ele como entrada para formar a resposta HTTP. Aqui estão os principais parâmetros:

  1. msg.payload
    O conteúdo da resposta. Ele é enviado ao cliente no corpo da resposta.

    Exemplo:

    • Para enviar texto:
      msg.payload = "Olá, Mundo!";
    • Para uma resposta JSON:
      msg.payload = { status: "ok", value: 42 };

  1. msg.statusCode
    O código de status HTTP da resposta. Se este campo não for especificado, 200 OK é usado por padrão.

    Exemplos de códigos de status:

    • 200 — Sucesso.
    • 201 — Recurso criado com sucesso.
    • 400 — Erro do cliente.
    • 404 — Recurso não encontrado.
    • 500 — Erro interno do servidor.

    Exemplo:

    msg.statusCode = 404; // Recurso não encontrado

  1. msg.headers
    Um objeto que define os cabeçalhos da resposta HTTP. Ele permite especificar, por exemplo, o tipo de conteúdo, cache ou cabeçalhos personalizados.

    Exemplo:

    msg.headers = {
    "Content-Type": "application/json",
    "Cache-Control": "no-cache"
    };

Exemplos de Uso

Exemplo 1: Enviando uma resposta JSON bem-sucedida

Fluxo:

[http in] ---> [function] ---> [http response]

Código para o nó function:

msg.payload = { success: true, message: "Solicitação processada com sucesso" };
msg.statusCode = 200;
msg.headers = { "Content-Type": "application/json" };
return msg;

Resultado:
O cliente receberá a resposta:

HTTP/1.1 200 OK
Content-Type: application/json

{
"success": true,
"message": "Solicitação processada com sucesso"
}

Exemplo 2: Tratando um erro

Fluxo:

[http in] ---> [function] ---> [http response]

Código para o nó function:

msg.payload = { error: "Parâmetros de solicitação inválidos" };
msg.statusCode = 400;
msg.headers = { "Content-Type": "application/json" };
return msg;

Resultado:
O cliente receberá a resposta:

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
"error": "Parâmetros de solicitação inválidos"
}

Exemplo 3: Resposta vazia com um status personalizado

Fluxo:

[http in] ---> [http response]

Código no nó function antes do nó http response:

msg.payload = null; // Corpo da resposta vazio
msg.statusCode = 204; // Sem conteúdo
return msg;

Resultado:
O cliente receberá a resposta:

HTTP/1.1 204 No Content