JSON-Parser-Schritt

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 4 Minuten Lesedauer
  • Identifizieren Sie strukturierte Daten aus einer JSON-Nutzlast, ohne ein Skript schreiben zu müssen. Ordnen Sie eingehenden JSON-Inhalt einer komplexen Objektausgabe zu, die Sie in anderen Schritten oder Aktionen verwenden können. Zur Laufzeit füllen Werte aus einer JSON-Nutzlast die komplexe Objektausgabe.

    Weitere Informationen zu komplexen Objekten finden Sie unter Komplexe Daten.

    Hinweis:
    Dieser Schritt erfordert ein IntegrationHub-Abonnement. Weitere Informationen finden Sie unter Gesetzliche Zeitpläne − Integrations-Hub − Übersicht. Nachdem das erforderliche Plugin aktiviert wurde, wird der Schritt unter Integrationen angezeigt.

    Rollen und Verfügbarkeit

    Verfügbar als Workflow-Studio-Aktionsschritt. Benutzer mit der Rolle „action_designer“ können eine anwenderdefinierte Aktion mit einem oder mehreren Aktionsschritten erstellen.

    Größenbeschränkung für Nutzlast

    Zur Laufzeit unterstützt JSON-Parser-Schritt Nutzlasten von bis zu 10 MB. Erstellen Sie für größere Nutzlasten eine Datenstrom -Aktion. Weitere Informationen zu Datenstromaktionen finden Sie unter Datenstromaktionen und -paginierung.

    Felder

    Feld Beschreibung
    Quelle Wählen oder ziehen Sie im Feld Quelldaten eine Datenpille, die die JSON-Quellnutzlast enthält. Zum Beispiel eine Datenpille des REST-Schritts Antworttext. Zur Laufzeit füllen Werte aus der Datenquelle die komplexe Objektausgabe.

    Geben Sie unter Quelldaten und im Skriptfenster eine Beispielnutzlast ein, um Ihr komplexes Objekt zu generieren. Wenn Sie beispielsweise die Antwort eines REST-Schritts analysieren, der eine Liste von Benutzern zurückgibt, geben Sie das erwartete JSON-Objekt für einen einzelnen Benutzer ein. Sie können jede JSON-Beispielnutzlast mit den folgenden Einschränkungen erstellen:

    • Mehrdimensionale Arrays werden nicht unterstützt.
    • Bindestriche, Punkte, Leerzeichen, Doppelpunkte und das @-Symbol in JSON-Schlüsseln werden nicht unterstützt.
    • Ihre Beispielnutzlast darf 2 MB nicht überschreiten.
    Strukturierte Payload-Ansicht Zeigen Sie Ihre Beispielnutzlast als normales JSON-Objekt an, oder schalten Sie die Option für die Ansicht der strukturierten Nutzlast um, um die Nutzlast in einer strukturierten Knotenstruktur anzuzeigen. Wählen Sie einen Knoten in der Struktur aus, um den JSONPath des Elements zu kopieren. Wenn Sie im Feld Ziel manuell neue Elemente hinzufügen, können Sie diesen JSONPath unter den erweiterten Optionen eines Elements einfügen.
    Ziel generieren Wählen Sie Ziel generieren aus, um die Ausgabestruktur des Schritts aus Ihrer Beispielnutzlast zu erstellen. Ihre Ausgabedatenstruktur wird im Feld Ziel angezeigt. Untergeordnete Elemente für jedes Objekt werden automatisch als Typ „Zeichenfolge“ generiert. Alternativ können Sie Ihr komplexes Zielobjekt manuell erstellen, indem Sie Elemente im Feld Ziel hinzufügen.
    Ziel

    Zeigen Sie die Ausgabestruktur der JSON-Nutzlast an, oder bearbeiten Sie sie. Erstellen Sie eine strukturierte Ausgabe, indem Sie auf Ziel generierenklicken, oder fügen Sie Elemente manuell hinzu.

    Jedes Element enthält in der Ansicht „Objekt bearbeiten“ die folgenden Informationen:

    • Bezeichnung: Bezeichnung derDatenpille. Standardmäßig verwendet das System den JSON-Schlüsselnamen.
    • Name: Interner Name für das Ausgabeelement.
      Hinweis:
      Ausrufezeichen, doppelte Doppelpunkte, das @-Symbol oder nur Zahlen sind keine gültigen Werte für den Namen eines Elements.
    • Typ: Datentyp, der „String“, „Object“, „Array.String“ oder „Array.Object“ sein muss. Das Element der obersten Ebene muss ein Objekt sein.
    • Obligatorisch: Umschalten, um das Element obligatorisch zu machen. Dies gilt nur für Elemente vom Typ „Zeichenfolge“.
    • Untergeordnetes Elementhinzufügen: Wählen Sie das Symbol zum Hinzufügen eines untergeordneten Elements ( Symbolzum Hinzufügen eines untergeordneten Elements), um ein geschachteltes untergeordnetes Element hinzuzufügen.

    Elemente vom Typ „Objekt“ enthalten die erweiterte Option „ Als Vorlage speichern“, mit der Sie die Struktur Ihres Objekts als komplexe Objektvorlage speichern können. Sie können diese Vorlage dann verwenden, um das Schema einer Objektausgabe für Ihre Aktion zu definieren.

    Für Elemente vom Typ „Zeichenfolge“ können Sie auch eine maximale Länge, einen Hinweis und einen Standardwert als erweiterte Optionen hinzufügen.

    Wählen Sie im Header Ziel die Option Bearbeitungsmodus beenden aus, wenn Sie mit den Änderungen an der Struktur Ihrer Ausgabe fertig sind. Sie können dann das Symbol zum Umschalten erweiterter Eingaben ( Symbolzum Umschalten erweiterter Eingaben ) wählen, um die Option JSONPath anzuzeigen.

    Der JSONPath ist der Pfad zum Element. Ändern Sie den JSONPath, um die Zuordnung Ihrer Quelldatenelemente zu Elementen in Ihrer Ausgabe zu ändern. Wenn Sie Elemente manuell hinzufügen, können Sie den JSONPath aus einem Knoten in Ihrer Beispielnutzlast kopieren und unter den erweiterten Optionen eines Elements einfügen.

    Beispiel für JSON-Parser-Schritt

    In diesem Beispiel werden neu erstellte Probleme aus einer Produktionsinstanz als Fehler in einer Testinstanz nachverfolgt. Erstellen Sie zuerst eine neue Aktion mit dem Namen Parse Problems from Production. Fügen Sie einen REST-Schritt hinzu, um eine Liste von Problemen aus der Produktionsinstanz abzurufen. Fügen Sie dann den JSON-Parser-Schritt hinzu, um Response Body des REST-Schritts zu analysieren und eine komplexe Objektausgabe bereitzustellen, die das Schema der Problemtabelle [problem] darstellt. Erstellen Sie abschließend eine Aktionsausgabe vom Typ Objekt mit dem Namen Problems from Production. Ziehen Sie die Datenpille root aus dem JSON-Parser-Schritt in das Wertfeld dieser Ausgabe.

    Abbildung : 1. Analysieren Sie Probleme aus der Produktionsaktion
    Der JSON-Parser-Schritt strukturiert eine komplexe Objektausgabe, die Problemdatensätze darstellt. Die Ausgabe der Aktion wird dann der komplexen Objektausgabe des JSON-Parser-Schritts zugeordnet.

    Als Nächstes erstellen Sie einen neuen Flow mit dem Namen Sync New Problems, der täglich um Mitternacht ausgelöst wird. Die erste Aktion im Flow ist die Aktion Parse Problems from Production. Fügen Sie dann einen Flow-Logikblock For Each hinzu, und löschen Sie den Probleme aus der Produktion > response Datenpille in das Feld Element. Fügen Sie im Block „ Für jeden “ einen Flow-Logikblock If hinzu, der überprüft, ob der Status jedes Problems neu ist, und dann einen Fehlerdatensatz in der Testinstanz erstellt, dessen Zuweisungsgruppe und Kurzbeschreibung jedem neuen Problem aus der Produktionsinstanz zugeordnet wird.

    Abbildung : 2. Flow „Neue Probleme synchronisieren“.
    Der Flow erstellt in unserer Testinstanz für jedes neue Problem in unserer Produktionsinstanz einen neuen Fehler.