Aller au contenu principal

Noeud http response

Le noeud http response est utilisé pour envoyer des réponses HTTP aux requêtes traitées par le noeud http in. Il termine le cycle de traitement de la requête et renvoie les données au client.


Paramètres du noeud http response

IMG2

1. Nom

Champ pour indiquer le nom du noeud.
Le nom s'affiche dans l'espace de travail et aide à identifier facilement le noeud.
S'il est laissé vide, le noeud sera nommé http response.

Exemple :

  • Nom du noeud : Envoyer une réponse JSON

2. Code d'état

Code d'état HTTP de la réponse, défini dans le formulaire du noeud. Par défaut — 200.

Exemple :

  • Code d'état : 201

Champs définis par le message d'entrée (msg)

Le noeud http response utilise l'objet msg, qui lui est transmis en entrée, pour former la réponse HTTP. Voici les principaux paramètres :

  1. msg.payload
    Contenu de la réponse. Il est envoyé au client dans le corps de la réponse.

    Exemple :

    • Pour envoyer du texte :
      msg.payload = "Bonjour, le monde !";
    • Pour une réponse JSON :
      msg.payload = { status: "ok", value: 42 };

  1. msg.statusCode
    Code d'état HTTP de la réponse. Si ce champ n'est pas défini, 200 OK est utilisé par défaut.

    Exemples de codes d'état :

    • 200 — Succès.
    • 201 — Création de ressource réussie.
    • 400 — Erreur du client.
    • 404 — Ressource non trouvée.
    • 500 — Erreur interne du serveur.

    Exemple :

    msg.statusCode = 404; // Ressource non trouvée

  1. msg.headers
    Objet définissant les en-têtes de la réponse HTTP. Permet de spécifier, par exemple, le type de contenu, le cache ou des en-têtes personnalisés.

    Exemple :

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

Exemples d'utilisation

Exemple 1 : Envoi d'une réponse JSON réussie

Flux :

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

Code du noeud function :

msg.payload = { success: true, message: "Requête traitée avec succès" };
msg.statusCode = 200;
msg.headers = { "Content-Type": "application/json" };
return msg;

Résultat :
Le client recevra la réponse :

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

{
"success": true,
"message": "Requête traitée avec succès"
}

Exemple 2 : Traitement d'une erreur

Flux :

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

Code du noeud function :

msg.payload = { error: "Paramètres de requête invalides" };
msg.statusCode = 400;
msg.headers = { "Content-Type": "application/json" };
return msg;

Résultat :
Le client recevra la réponse :

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

{
"error": "Paramètres de requête invalides"
}

Exemple 3 : Réponse vide avec un statut personnalisé

Flux :

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

Code dans le noeud function avant le noeud http response :

msg.payload = null; // Corps de réponse vide
msg.statusCode = 204; // Pas de contenu
return msg;

Résultat :
Le client recevra la réponse :

HTTP/1.1 204 No Content