Pular para o conteúdo principal

Nó http request

O nó http request executa solicitações HTTP para serviços web externos ou APIs. Ele oferece vários métodos HTTP, diferentes formas de enviar dados, autenticação e controle flexível de solicitações e respostas.


Configurações do nó http request​

Janela "Node Information" do nó http request "paypal auth": método "POST", endereço de token do PayPal sandbox, "Object JSON", "Use Authentication" ativado com tipo "basic"

1. Name​

Nome do nó.
Ele aparece na área de trabalho e ajuda a identificar o nó.
Se você deixar o campo em branco, o nó se chamará http request.

Exemplo:

  • Nome do nó: Get Weather Data

2. Method​

Método HTTP da solicitação. Escolha o método de acordo com o tipo de operação que você precisa realizar.

Métodos disponíveis:

  • GET: obter dados.
  • POST: enviar dados.
  • PUT: atualizar dados.
  • DELETE: excluir dados.
  • HEAD: obter os cabeçalhos da resposta.

Exemplo:

  • Method: POST

URL estática para a qual a solicitação é enviada.
Se o endereço precisar ser definido dinamicamente, passe-o em msg.url.

Exemplo:

  • Link: https://api.example.com/data

4. Data​

Define como os dados de entrada são adicionados à solicitação HTTP. As opções são:

  1. Ignore (padrão):
    Os dados de entrada não são usados na solicitação. O campo msg.payload, se existir, é ignorado.

    Exemplo:
    Se msg.payload contiver um objeto JSON, ele não será incluído na solicitação.


  1. Add to query parameters:
    Os dados de msg.payload são convertidos em parâmetros de query string (Query Parameters) e adicionados à URL.

    Exemplo:
    Se msg.payload contiver:

    {
    "key1": "value1",
    "key2": "value2"
    }

    e o Link for http://example.com/api, a solicitação final será:
    GET http://example.com/api?key1=value1&key2=value2.


  1. Send as request body:
    Os dados de msg.payload são enviados no corpo da solicitação. Esta opção é adequada para os métodos POST e PUT, que costumam transmitir os dados no corpo.

    Exemplo:
    Se msg.payload contiver:

    {
    "name": "John Doe",
    "email": "john.doe@example.com"
    }

    e o método da solicitação for POST, esses dados serão enviados no corpo da solicitação.

5. Return​

Define em que formato o nó processa a resposta do servidor.

Opções:

  • String: a resposta é convertida em string (padrão).
  • Object JSON: se o servidor responder em JSON, a resposta é convertida automaticamente em um objeto JavaScript.
  • Binary Buffer: a resposta é retornada como buffer binário (útil para dados binários, como imagens ou arquivos).

Exemplo:

  • Com Object JSON selecionado, a resposta:
    {"status": "ok", "value": 42}
    é convertida em:
    msg.payload = { status: "ok", value: 42 };

6. Use Authentication​

Esta caixa de seleção ativa a autenticação integrada (desativada por padrão). Quando ela está marcada, o formulário exibe o campo Type com o método de autenticação (padrão: basic):

basic​

  • Username: nome de usuário.
  • Password: senha.

bearer​

  • Password: token de acesso.

digest​

  • Username: nome de usuário.
  • Password: senha.

Dados de entrada​

O nó http request recebe um objeto de mensagem msg com estes parâmetros:

  1. msg.url: URL da solicitação (se não estiver definida nas configurações do nó).
  2. msg.method: método HTTP (se não estiver definido nas configurações do nó).
  3. msg.payload: corpo da solicitação (usado nos métodos POST e PUT).
  4. msg.headers: cabeçalhos da solicitação HTTP (objeto).

Dados de saída​

O nó retorna um objeto msg com informações sobre a solicitação realizada:

  1. msg.payload: dados da resposta do servidor.
  2. msg.statusCode: código de status HTTP da resposta (por exemplo, 200 ou 404).
  3. msg.headers: cabeçalhos da resposta.
  4. msg.responseUrl: URL para a qual a solicitação foi feita.
  5. msg.error: descrição do erro (se a solicitação falhar).

Exemplos de uso​

Exemplo 1: solicitação GET​

Configurações do nó:

  • Method: GET
  • Link: https://api.weatherapi.com/v1/current.json?key=API_KEY&q=London

Fluxo:

[inject] ---> [http request] ---> [debug]

Resultado: o nó retorna um JSON com o clima atual.


Exemplo 2: envio de dados via POST​

Configurações do nó:

  • Method: POST
  • Link: https://api.example.com/devices
  • Data: Send as request body

Fluxo:

[function] ---> [http request] ---> [debug]

Código no nó function:

msg.payload = {
deviceId: "sensor123",
status: "active"
};
msg.headers = { "Content-Type": "application/json" };
return msg;

Resultado: os dados são enviados e o nó retorna a resposta do servidor.


Exemplo 3: URL dinâmica e autenticação​

Configurações do nó:

  • Link: (deixe em branco)

Fluxo:

[function] ---> [http request] ---> [debug]

Código no nó function:

msg.url = "https://api.example.com/user/123";
msg.headers = { Authorization: "Bearer YOUR_TOKEN" };
return msg;

Resultado: o nó faz a solicitação para a URL indicada com o token de autenticação.