Noeud http in
Le noeud http in
est utilisé pour créer des points de terminaison HTTP qui peuvent traiter des requêtes HTTP entrantes (GET, POST, PUT, etc.). Ce noeud est le point d'entrée pour interagir avec des systèmes externes via le protocole HTTP.
Important : Tous les chemins spécifiés reçoivent automatiquement le préfixe : /api/admin/workflows/endpoints/
.
Paramètres du noeud http in
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 appelé http in
.
Exemple :
- Nom du noeud :
get payment link
2. Méthode
Méthode HTTP que le noeud traitera. Les options suivantes sont disponibles :
- GET : Utilisé pour obtenir des données.
- POST : Utilisé pour envoyer des données.
- PUT : Utilisé pour mettre à jour des données.
- DELETE : Utilisé pour supprimer des données.
- PATCH : Utilisé pour une mise à jour partielle des données.
- OPTIONS : Utilisé pour les requêtes d'obtention de métadonnées sur l'API.
3. Lien
Indique le chemin (point de terminaison) pour traiter les requêtes.
- Le chemin commence par
/
. - Peut inclure des variables de route, par exemple :
/data/:id
.
Exemple :
- Lien :
/get-payment-link
- Lien avec paramètre :
/get-payment-link/:orderId
Format du message d'entrée
Lorsque la requête arrive sur le chemin spécifié avec la méthode choisie, le noeud http in
crée un message msg
avec les propriétés suivantes :
msg.req
: Contient l'objet de la requête HTTP, y compris les en-têtes, les paramètres, le corps et d'autres données.msg.req.params
: Paramètres de la route (par exemple,:id
dans/api/data/:id
).msg.req.query
: Paramètres GET de la requête.msg.req.body
: Corps de la requête (pour les méthodes POST, PUT et PATCH).
msg.res
: Objet pour gérer la réponse HTTP. Il est généralement transmis au noeudhttp response
pour envoyer une réponse au client.
Exemple d'utilisation
Exemple 1 : Traitement d'une requête GET
Scénario : Retourner des données sur la température.
Paramètres du noeud :
- Méthode :
GET
- Lien :
/temperature
Flux :
[http in] ---> [function] ---> [http response]
Code du noeud function
:
msg.payload = { temperature: 22.5, unit: "Celsius" };
return msg;
Résultat : Le client ayant envoyé une requête GET à /api/admin/workflows/endpoints/temperature
recevra une réponse JSON :
{
"temperature": 22.5,
"unit": "Celsius"
}
Exemple 2 : Traitement d'une requête POST
Scénario : Réception et sauvegarde de données d'un appareil.
Paramètres du noeud :
- Méthode :
POST
- Lien :
/data
Flux :
[http in] ---> [function] ---> [http response]
Code du noeud function
:
// Lecture des données du corps de la requête
const data = msg.req.body;
msg.payload = { status: "success", receivedData: data };
return msg;
Résultat : Le noeud recevra les données du corps de la requête POST et renverra une réponse de confirmation.
Exemple 3 : Utilisation de paramètres de route
Scénario : Obtenir des données par identifiant d'appareil.
Paramètres du noeud :
- Méthode :
GET
- Lien :
/device/:id
Flux :
[http in] ---> [function] ---> [http response]
Code du noeud function
:
const deviceId = msg.req.params.id;
msg.payload = { deviceId: deviceId, status: "active" };
return msg;
Résultat :
{
"deviceId": "123",
"status": "active"
}