Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Gestion de l'état et transformation des données
Un Fail
state ("Type": "Fail"
) arrête l'exécution de la machine à états et la marque comme une défaillance, sauf si elle est interceptée par un Catch
bloc.
L'état Fail
autorise uniquement l'utilisation de champs Type
et Comment
à partir de l'ensemble de champs d'état courants. En outre, l'état Fail
autorise les champs suivants :
-
Cause
(facultatif) -
Chaîne personnalisée qui décrit la cause de l'erreur. Vous pouvez spécifier ce champ à des fins opérationnelles ou diagnostiques.
Dans JSONata les états, vous pouvez également spécifier une JSONata expression.
-
CausePath
(Facultatif, JSONPath uniquement) -
Si vous souhaitez fournir une description détaillée de la cause de l'erreur de manière dynamique à partir de l'entrée d'état à l'aide d'un chemin de référence, utilisez
CausePath
. Une fois résolu, le chemin de référence doit sélectionner un champ contenant une valeur de chaîne.Vous pouvez également le spécifier
CausePath
à l'aide d'une fonction intrinsèque qui renvoie une chaîne. Ces éléments intrinsèques sont les suivants : States.Format,,, States.JsonToString States.ArrayGetItem States.Base64EncodeStates.Base64Decode, States.Hash et. States.UUIDImportant
-
Vous pouvez spécifier l'un
Cause
ou l'autreCausePath
, mais pas les deux dans votre définition de l'état d'échec. -
En tant que bonne pratique en matière de sécurité des informations, nous vous recommandons de supprimer toutes les informations sensibles ou les détails du système interne de la description de la cause.
-
-
Error
(facultatif) -
Nom d'erreur que vous pouvez fournir pour effectuer la gestion des erreurs à l'aide des champs Retry ou Catch. Vous pouvez également fournir un nom d'erreur à des fins opérationnelles ou de diagnostic.
Dans JSONata les états, vous pouvez également spécifier une JSONata expression.
-
ErrorPath
(Facultatif, JSONPath uniquement) -
Si vous souhaitez attribuer un nom à l'erreur de manière dynamique à partir de l'entrée d'état à l'aide d'un chemin de référence, utilisez
ErrorPath
. Une fois résolu, le chemin de référence doit sélectionner un champ contenant une valeur de chaîne.Vous pouvez également le spécifier
ErrorPath
à l'aide d'une fonction intrinsèque qui renvoie une chaîne. Ces éléments intrinsèques sont les suivants : States.Format,,, States.JsonToString States.ArrayGetItem States.Base64EncodeStates.Base64Decode, States.Hash et. States.UUIDImportant
-
Vous pouvez spécifier l'un
Error
ou l'autreErrorPath
, mais pas les deux dans votre définition de l'état d'échec. -
En tant que bonne pratique en matière de sécurité des informations, nous vous recommandons de supprimer toutes les informations sensibles ou les détails du système interne du nom de l'erreur.
-
Comme les états Fail
quittent toujours la machine d'état, ils n'ont pas de champ Next
ni ne nécessitent un champ End
.
Exemples de définition de l'état d'échec
L'exemple de définition de l'état Fail suivant spécifie des valeurs statiques Error
et des valeurs de Cause
champ.
"FailState": {
"Type": "Fail",
"Cause": "Invalid response.",
"Error": "ErrorA"
}
L'exemple de définition de l'état d'échec suivant utilise des chemins de référence de manière dynamique pour résoudre les valeurs des Cause
champs Error
et.
"FailState": {
"Type": "Fail",
"CausePath": "$.Cause",
"ErrorPath": "$.Error"
}
L'exemple de définition de l'état Fail suivant utilise la fonction intrinsèque States.Format pour spécifier les valeurs des Cause
champs Error
et de manière dynamique.
"FailState": {
"Type": "Fail",
"CausePath": "States.Format('This is a custom error message for {}, caused by {}.', $.Error, $.Cause)",
"ErrorPath": "States.Format('{}', $.Error)"
}