Étape de l’analyseur JSON

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 5 minutes de lecture
  • Identifiez les données structurées d'une charge utile JSON sans avoir à écrire de script. Mappez le contenu JSON entrant à une sortie d'objet complexe que vous pouvez utiliser dans d'autres étapes ou actions. Lors de l'exécution, les valeurs d'une charge utile JSON renseignent la sortie d'objet complexe.

    Pour en savoir plus sur les objets complexes, reportez-vous à la rubrique Données complexes.

    Remarque :
    Cette étape nécessite un abonnement Hub d'intégration. Pour plus d’informations, consultez Calendriers juridiques - Vue d’ensemble du concentrateur d’intégration. Une fois le module d’extension requis activé, l’étape est visible sous Intégrations.

    Rôles et disponibilité

    Disponible en tant qu’étape d’action Studio de workflow . Les utilisateurs disposant du rôle action_designer peuvent créer une action personnalisée avec une ou plusieurs étapes d’action.

    Limite de taille de la charge utile

    Lors de l’exécution, Étape de l’analyseur JSON prend en charge des charges utiles allant jusqu’à 10 Mo. Pour les charges utiles plus importantes, créez une Flux de données action. Pour plus d’informations sur les actions de flux de données, reportez-vous à la section Actions et pagination du flux de données.

    Champs

    Champ Description
    Source Dans le champ Données source , sélectionnez ou faites glisser une pastille de données qui contient la charge utile JSON source. Par exemple, une pastille de données du corps de la réponse de l’étape REST. Lors de l’exécution, les valeurs de la source de données renseignent la sortie d’objet complexe.

    Sous Données sources et dans la fenêtre de scripting, entrez un exemple de charge utile pour générer votre objet complexe. Par exemple, si vous analysez la réponse d’une étape REST qui renvoie une liste d’utilisateurs, saisissez l’objet JSON attendu pour un utilisateur unique. Vous pouvez créer n’importe quel exemple de charge utile JSON avec les limitations suivantes :

    • Les tableaux multidimensionnels ne sont pas pris en charge.
    • Les traits d’union, les points, les espaces, les doubles deux-points et le symbole @ dans les clés JSON ne sont pas pris en charge.
    • Votre exemple de charge utile ne peut pas dépasser 2 Mo.
    Vue de charge utile structurée Affichez votre exemple de charge utile sous forme de JSON ordinaire ou activez la vue de charge utile structurée pour afficher la charge utile dans une arborescence de nœuds structurés. Sélectionnez un nœud de l’arborescence pour copier le JSONPath de l’élément. Si vous ajoutez manuellement de nouveaux éléments dans le champ Cible , vous pouvez coller ce JSONPath sous les options avancées d’un élément.
    Générer la cible Sélectionnez Générer la cible pour créer la structure de sortie de l’étape à partir de votre exemple de charge utile. Votre structure de données de sortie s’affiche dans le champ Cible . Les éléments enfants de chaque objet sont automatiquement générés en tant que chaîne de type. Vous pouvez également créer manuellement votre objet complexe cible en ajoutant des éléments dans le champ Cible .
    Cible

    Affichez ou modifiez la structure de sortie de la charge utile JSON. Créez une sortie structurée en cliquant sur Générer la cible ou ajoutez manuellement des éléments.

    Chaque élément contient les informations suivantes dans la vue Modifier l’objet :

    • Étiquette : étiquette de pastille de données. Par défaut, le système utilise le nom de la clé JSON.
    • Nom : nom interne de l’élément de sortie.
      Remarque :
      Les points d’exclamation, les doubles deux-points, le symbole @ ou les chiffres uniquement ne sont pas des valeurs valides pour le nom d’un élément.
    • Type : type de données, qui doit être Chaîne, Objet, Tableau.Chaîne ou Tableau.Objet. L’élément de niveau supérieur doit être un objet.
    • Obligatoire : basculez pour rendre l’élément obligatoire. Cela ne s’applique qu’aux éléments de type Chaîne.
    • Ajouter un élément enfant : sélectionnez l’icône Ajouter un élément enfant (icône Ajouter un élément enfant) pour ajouter un élément enfant imbriqué.

    Les éléments de type Objet contiennent l’option avancée Enregistrer en tant que modèle , qui vous permet d’enregistrer la structure de votre objet en tant que modèle d’objet complexe. Vous pouvez ensuite utiliser ce modèle pour définir le schéma d’une sortie d’objet pour votre action.

    Pour les éléments de type Chaîne, vous pouvez également ajouter une longueur maximale, une indication et une valeur par défaut en tant qu’options avancées.

    Dans l’en-tête Cible, sélectionnez Quitter le mode d’édition lorsque vous avez terminé d’apporter des modifications à la structure de votre sortie. Vous pouvez ensuite sélectionner l’icône Activer/désactiver les entrées avancées (icône Activer/désactiver les entrées avancées) pour afficher l’option JSONPath .

    Le JSONPath est le chemin d’accès à l’élément. Modifiez le JSONPath pour changer la façon dont vos éléments de données sources sont mappés aux éléments de votre sortie. Si vous ajoutez manuellement des éléments, vous pouvez copier le JSONPath à partir d’un nœud dans votre exemple de charge utile et le coller sous les options avancées d’un élément.

    Exemple d’étape d’analyse JSON

    Cet exemple suit les problèmes nouvellement créés à partir d’une instance de production en tant que défauts dans une instance de test. Tout d’abord, créez une action nommée Parse Problems from Production. Ajoutez une étape REST pour récupérer une liste de problèmes à partir de l’instance de production. Ensuite, ajoutez l’étape d’analyseur JSON pour analyser les étapes Response Body REST et fournir une sortie d’objet complexe qui représente le schéma de la table Problème [problem]. Enfin, créez une sortie d’action de type Objet nommé Problems from Production. Déplacez la pastille de données de l’étape de l’analyseur JSON dans le root champ de valeur de cette sortie.

    Figure 1. Analyser les problèmes à partir de l’action de production
    L’étape de l’analyseur JSON structure une sortie d’objet complexe qui représente des enregistrements de problèmes. La sortie de l’action est ensuite mappée à la sortie d’objet complexe de l’étape de l’analyseur JSON.

    Ensuite, créez un nouveau flux nommé Sync New Problems, qui est déclenché quotidiennement à minuit. La première action dans le flux est l’action Parse Problems from Production . Ensuite, ajoutez un bloc de For Each logique de flux et déposez le Problèmes liés à la production > réponse pastille de données dans le champ Élément . Dans le bloc For Each (Pour chaque ), ajoutez un If bloc de logique de flux qui vérifie si l’état de chaque problème est nouveau, puis crée un enregistrement de défaut dans l’instance de test dont le groupe d’affectation et la description brève sont mappés à chaque nouveau problème de l’instance de production.

    Figure 2. Synchroniser le flux des nouveaux problèmes
    Le flux crée un nouveau défaut dans notre instance de test pour chaque nouveau problème dans notre instance de production.