Noeud function
Le noeud function
est utilisé pour écrire du code JavaScript personnalisé, permettant des calculs complexes, des transformations de données et une logique de traitement des messages. Il offre la flexibilité d'implémenter une logique qui n'est pas supportée par les noeuds standard.
Paramètres pour le noeud function
1. Nom
Un champ pour spécifier le nom du noeud.
Le nom est affiché dans l'espace de travail et aide à identifier facilement le noeud.
S'il est laissé vide, le noeud sera appelé function
.
Exemple :
- Nom du noeud :
auth data
2. Fonction
Ce champ est l'endroit où le code JavaScript est saisi, qui sera exécuté pour chaque message passant par le noeud.
Format des données d'entrée :
Le code reçoit un objet msg
, représentant le message actuel.
Format des données de sortie :
- Le noeud doit retourner un objet message (ou un tableau d'objets) pour transmettre les données plus loin dans le flux.
- Si
null
est retourné, le message ne sera pas envoyé plus loin.
Exemple :
// Incrémente la valeur de msg.payload de 1
msg.payload = msg.payload + 1;
return msg;
Exemples d'utilisation
Exemple 1 : Multiplier la valeur dans msg.payload
msg.payload = msg.payload * 2;
return msg;
Description :
- Prend la valeur de
msg.payload
, la multiplie par 2 et envoie l'objet mis à jour.
Exemple 2 : Ajouter une nouvelle propriété
msg.newProperty = "Bonjour, le monde !";
return msg;
Description :
- Crée une nouvelle propriété
newProperty
et l'ajoute à l'objetmsg
.
Exemple 3 : Traitement conditionnel des messages
if (msg.payload > 100) {
msg.alert = "Valeur élevée détectée !";
} else {
msg.alert = "La valeur est normale.";
}
return msg;
Description :
- Ajoute une propriété
alert
avec un message d'avertissement en fonction de la valeur demsg.payload
.
Exemple 4 : Filtrer les messages
if (msg.payload > 50) {
return msg; // Passe le message plus loin
}
return null; // Arrête le message
Description :
- Ne passe que les messages avec
msg.payload > 50
, tandis que les autres sont arrêtés.