Passa al contenuto principale

Nodo http response

Il nodo http response viene utilizzato per inviare risposte HTTP alle richieste elaborate dal nodo http in. Completa il ciclo di elaborazione della richiesta e restituisce i dati al client.


Impostazioni del nodo http response

IMG2

1. Nome

Campo per specificare il nome del nodo.
Il nome viene visualizzato nell'area di lavoro e aiuta a identificare facilmente il nodo.
Se lasciato vuoto, il nodo sarà chiamato http response.

Esempio:

  • Nome del nodo: Invia risposta JSON

Campi definiti dal messaggio in ingresso (msg)

Il nodo http response utilizza l'oggetto msg passato in ingresso per formare la risposta HTTP. Ecco i parametri principali:

  1. msg.payload
    Il contenuto della risposta. Viene inviato al client nel corpo della risposta.

    Esempio:

    • Per inviare testo:
      msg.payload = "Ciao, Mondo!";
    • Per una risposta JSON:
      msg.payload = { status: "ok", value: 42 };

  1. msg.statusCode
    Codice di stato HTTP della risposta. Se questo campo non è specificato, viene utilizzato 200 OK per impostazione predefinita.

    Esempi di codici di stato:

    • 200 — Successo.
    • 201 — Creazione del risorsa riuscita.
    • 400 — Errore del client.
    • 404 — Risorsa non trovata.
    • 500 — Errore interno del server.

    Esempio:

    msg.statusCode = 404; // Risorsa non trovata

  1. msg.headers
    Oggetto che definisce le intestazioni della risposta HTTP. Permette di specificare, ad esempio, il tipo di contenuto, la cache o intestazioni personalizzate.

    Esempio:

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

Esempi di utilizzo

Esempio 1: Invio di una risposta JSON di successo

Flusso:

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

Codice del nodo function:

msg.payload = { success: true, message: "Richiesta elaborata con successo" };
msg.statusCode = 200;
msg.headers = { "Content-Type": "application/json" };
return msg;

Risultato:
Il client riceverà la risposta:

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

{
"success": true,
"message": "Richiesta elaborata con successo"
}

Esempio 2: Gestione dell'errore

Flusso:

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

Codice del nodo function:

msg.payload = { error: "Parametri di richiesta non validi" };
msg.statusCode = 400;
msg.headers = { "Content-Type": "application/json" };
return msg;

Risultato:
Il client riceverà la risposta:

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

{
"error": "Parametri di richiesta non validi"
}

Esempio 3: Risposta vuota con stato personalizzato

Flusso:

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

Codice nel nodo function prima del nodo http response:

msg.payload = null; // Corpo della risposta vuoto
msg.statusCode = 204; // Nessun contenuto
return msg;

Risultato:
Il client riceverà la risposta:

HTTP/1.1 204 No Content