Przejdź do głównej zawartości

Węzeł http in

Węzeł http in jest używany do tworzenia punktów końcowych HTTP, które mogą obsługiwać przychodzące żądania HTTP (GET, POST, PUT i inne). Ten węzeł jest punktem wejścia do interakcji z zewnętrznymi systemami za pośrednictwem protokołu HTTP.

Ważne: Wszystkie określone ścieżki automatycznie otrzymują prefiks: /api/admin/workflows/endpoints/.


Ustawienia węzła http in

IMG2

1. Nazwa

Pole do podania nazwy węzła.
Nazwa jest wyświetlana w obszarze roboczym i pomaga łatwo zidentyfikować węzeł.
Jeśli pozostawisz puste, węzeł będzie nazywał się http in.

Przykład:

  • Nazwa węzła: get payment link

2. Metoda

Metoda HTTP, którą węzeł będzie obsługiwał. Dostępne są następujące opcje:

  • GET: Używana do pobierania danych.
  • POST: Używana do wysyłania danych.
  • PUT: Używana do aktualizacji danych.
  • DELETE: Używana do usuwania danych.
  • PATCH: Używana do częściowej aktualizacji danych.
  • OPTIONS: Używana do zapytań o metainformacje dotyczące API.

Określa ścieżkę (endpoint) do obsługi żądań.

  • Ścieżka zaczyna się od /.
  • Może zawierać zmienne trasy, na przykład: /data/:id.

Przykład:

  • Link: /get-payment-link
  • Link z parametrem: /get-payment-link/:orderId

Format wiadomości wejściowej

Gdy żądanie dociera do określonej ścieżki z wybraną metodą, węzeł http in tworzy wiadomość msg z następującymi właściwościami:

  • msg.req: Zawiera obiekt żądania HTTP, w tym nagłówki, parametry, ciało i inne dane.
    • msg.req.params: Parametry trasy (na przykład :id w /api/data/:id).
    • msg.req.query: Parametry GET żądania.
    • msg.req.body: Ciało żądania (dla metod POST, PUT i PATCH).
  • msg.res: Obiekt do zarządzania odpowiedzią HTTP. Zwykle przekazywany do węzła http response w celu wysłania odpowiedzi do klienta.

Przykład użycia

Przykład 1: Obsługa żądania GET

Scenariusz: Zwrócenie danych o temperaturze.

Ustawienia węzła:

  • Metoda: GET
  • Link: /temperature

Przepływ:

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

Kod węzła function:

msg.payload = { temperature: 22.5, unit: "Celsius" };
return msg;

Wynik: Klient, który wysłał żądanie GET na /api/admin/workflows/endpoints/temperature, otrzyma odpowiedź JSON:

{
"temperature": 22.5,
"unit": "Celsius"
}

Przykład 2: Obsługa żądania POST

Scenariusz: Odbieranie i zapisywanie danych z urządzenia.

Ustawienia węzła:

  • Metoda: POST
  • Link: /data

Przepływ:

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

Kod węzła function:

// Odczyt danych z ciała żądania
const data = msg.req.body;
msg.payload = { status: "success", receivedData: data };
return msg;

Wynik: Węzeł odbierze dane z ciała żądania POST i zwróci odpowiedź z potwierdzeniem.


Przykład 3: Użycie parametrów trasy

Scenariusz: Odbieranie danych na podstawie identyfikatora urządzenia.

Ustawienia węzła:

  • Metoda: GET
  • Link: /device/:id

Przepływ:

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

Kod węzła function:

const deviceId = msg.req.params.id;
msg.payload = { deviceId: deviceId, status: "active" };
return msg;

Wynik:

{
"deviceId": "123",
"status": "active"
}