Node http in
O nó http in
é usado para criar endpoints HTTP que podem lidar com solicitações HTTP recebidas (GET, POST, PUT e outras). Este nó serve como o ponto de entrada para interagir com sistemas externos via o protocolo HTTP.
Importante: Todos os caminhos especificados recebem automaticamente o prefixo: /api/admin/workflows/endpoints/
.
Configurações para o nó http in
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 in
.
Exemplo:
- Nome do nó:
obter link de pagamento
2. Método
O método HTTP que o nó irá lidar. As seguintes opções estão disponíveis:
- GET: Usado para recuperar dados.
- POST: Usado para enviar dados.
- PUT: Usado para atualizar dados.
- DELETE: Usado para deletar dados.
- PATCH: Usado para atualizar dados parcialmente.
- OPTIONS: Usado para solicitações para obter metadados sobre a API.
3. Link
Especifica o caminho (endpoint) para lidar com solicitações.
- O caminho começa com
/
. - Pode incluir parâmetros de rota, por exemplo:
/data/:id
.
Exemplo:
- Link:
/obter-link-de-pagamento
- Link com parâmetro:
/obter-link-de-pagamento/:orderId
Formato da mensagem recebida
Quando uma solicitação é recebida no caminho especificado com o método selecionado, o nó http in
cria uma mensagem msg
com as seguintes propriedades:
-
msg.req
: Contém o objeto de solicitação HTTP, incluindo cabeçalhos, parâmetros, corpo e outros dados.msg.req.params
: Parâmetros de rota (por exemplo,:id
em/api/data/:id
).msg.req.query
: Parâmetros da solicitação GET.msg.req.body
: O corpo da solicitação (para métodos POST, PUT e PATCH).
-
msg.res
: Um objeto para gerenciar a resposta HTTP. Geralmente é passado para o nóhttp response
para enviar uma resposta de volta ao cliente.
Exemplo de uso
Exemplo 1: Lidando com uma solicitação GET
Cenário: Retornando dados de temperatura.
Configurações do nó:
- Método:
GET
- Link:
/temperatura
Fluxo:
[http in] ---> [function] ---> [http response]
Código para o nó function
:
msg.payload = { temperatura: 22.5, unidade: "Celsius" };
return msg;
Resultado: O cliente que envia uma solicitação GET para /api/admin/workflows/endpoints/temperatura
receberá uma resposta JSON:
{
"temperatura": 22.5,
"unidade": "Celsius"
}
Exemplo 2: Lidando com uma solicitação POST
Cenário: Recebendo e salvando dados de um dispositivo.
Configurações do nó:
- Método:
POST
- Link:
/dados
Fluxo:
[http in] ---> [function] ---> [http response]
Código para o nó function
:
// Lendo dados do corpo da solicitação
const dados = msg.req.body;
msg.payload = { status: "sucesso", dadosRecebidos: dados };
return msg;
Resultado: O nó aceitará dados do corpo da solicitação POST e retornará uma resposta de confirmação.
Exemplo 3: Usando parâmetros de rota
Cenário: Recuperando dados pelo ID do dispositivo.
Configurações do nó:
- Método:
GET
- Link:
/dispositivo/:id
Fluxo:
[http in] ---> [function] ---> [http response]
Código para o nó function
:
const deviceId = msg.req.params.id;
msg.payload = { deviceId: deviceId, status: "ativo" };
return msg;
Resultado:
{
"deviceId": "123",
"status": "ativo"
}