Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: Azure Logic Apps (Verbrauch + Standard)
Wenn Sie XML-Inhalte mit einem Handelspartner in einer Business-to-Business(B2B)-Integration austauschen, müssen Sie die Inhalte häufig codieren, bevor Sie sie senden. Wenn Sie codierte XML-Inhalte empfangen, müssen Sie diesen Inhalt decodieren, bevor Sie ihn verwenden können.
In diesem Leitfaden wird gezeigt, wie XML in Ihren Workflows mithilfe der integrierten Aktionen für den Flachdateikonnektor und einem Flachdateischema codiert und decodiert wird.
Technische Referenz für das Verbindungselement
Die Aktionen zur Flat File-Codierung und -Decodierung sind sowohl für Workflows von Verbrauchslogik-Apps als auch für Standardlogik-App-Workflows verfügbar.
| Logik-App | Umwelt |
|---|---|
| Consumption | Azure Logic Apps mit mehreren Mandanten |
| Norm | Azure Logic Apps mit Einzelmandant, App Service-Umgebung v3 (nur Windows-Pläne) und hybride Bereitstellung |
Weitere Informationen finden Sie unter integrierte Konnektoren für Integrationskonto.
Voraussetzungen
Ein Azure-Konto und ein Azure-Abonnement. Erhalten Sie ein kostenloses Azure-Konto.
Die Logik-App-Ressource und der Workflow, in der Sie die Flat File-Vorgänge verwenden möchten.
Flat File-Vorgänge enthalten keine Trigger. Ihr Workflow kann mit jedem Trigger beginnen oder eine Aktion verwenden, um die XML-Quelldatei einzubringen.
Die Beispiele in diesem Artikel verwenden den Anforderungstrigger
namens "Wenn eine HTTP-Anforderung empfangen wird" .Weitere Informationen finden Sie unter:
Eine Ressource für das Integrationskonto zum Definieren und Speichern von Artefakten für Unternehmensintegrationen und B2B-Workflows.
Sowohl Ihre Integrationskonto- als auch Ihre Logik-App-Ressource müssen im selben Azure-Abonnement und in derselben Azure-Region vorliegen.
Bevor Sie mit der Arbeit mit Flat File-Vorgängen beginnen, müssen Sie Ihre Verbrauchslogik-App verknüpfen oder Ihre Standardlogik-App mit dem Integrationskonto für das Arbeiten mit Artefakten wie Handelspartnern und Vereinbarungen verknüpfen . Sie können ein Integrationskonto mit mehreren Ressourcen der Verbrauchs- oder Standardlogik-App verknüpfen, um dieselben Artefakte gemeinsam nutzen zu können.
Tipp
Wenn Sie nicht mit B2B-Artefakten wie Handelspartnern und Vereinbarungen in Standardworkflows arbeiten, benötigen Sie möglicherweise kein Integrationskonto. Stattdessen können Sie Schemas direkt in Ihre Standardlogik-App-Ressource hochladen. In beiden Fällen können Sie dasselbe Schema für alle untergeordneten Workflows in derselben Logik-App-Ressource verwenden. Um dasselbe Schema für mehrere Logik-App-Ressourcen zu verwenden, müssen Sie ein Integrationskonto verwenden und verknüpfen.
Ein flaches Dateischema, das angibt, wie XML-Inhalte codiert oder decodiert werden.
In Standardworkflows können Sie mit Flat File-Vorgängen ein Schema aus einem verknüpften Integrationskonto auswählen oder das Sie zuvor in Ihre Logik-App hochgeladen haben, aber nicht beides.
Weitere Informationen finden Sie unter Hinzufügen von Schemas zu Integrationskonten.
Installieren oder verwenden Sie ein Tool, das HTTP-Anforderungen senden kann, um Ihre Lösung zu testen, z. B.:
- Visual Studio Code mit einer Erweiterung von Visual Studio Marketplace
- PowerShell Invoke-RestMethod
- Microsoft Edge – Netzwerkkonsolentool
- Bruno
- curl
Vorsicht
Für Szenarien, in denen Sie vertrauliche Daten haben, z. B. Anmeldeinformationen, Geheime Schlüssel, Zugriffstoken, API-Schlüssel und andere ähnliche Informationen, stellen Sie sicher, dass Sie ein Tool verwenden, das Ihre Daten mit den erforderlichen Sicherheitsfeatures schützt. Das Tool sollte offline oder lokal arbeiten und muss sich nicht bei einem Onlinekonto anmelden oder Daten mit der Cloud synchronisieren. Wenn Sie ein Tool mit diesen Merkmalen verwenden, verringern Sie das Risiko, vertrauliche Daten für die Öffentlichkeit verfügbar zu machen.
Einschränkungen
XML-Inhalte, die Sie decodieren möchten, müssen im UTF-8-Format codiert werden.
Vergewissern Sie sich in Ihrem Flatfile-Schema, dass in den enthaltenen XML-Gruppen die
max count-Eigenschaft nicht zu häufig auf einen Wert größer als 1 festgelegt ist. Vermeiden Sie die Verschachtelung einer XML-Gruppe mit einemmax countEigenschaftswert größer als 1 innerhalb einer anderen XML-Gruppe mit einermax countEigenschaft größer als 1.Wenn Azure Logic Apps das flache Dateischema analysiert und wenn das Schema die Auswahl des nächsten Fragments zulässt, generiert Azure Logic Apps ein Symbol und eine Vorhersage für dieses Fragment. Wenn das Schema zu viele Konstrukte zulässt, z. B. mehr als 100.000, wird die Schemaerweiterung sehr groß, was zu viel Ressourcen und Zeit verbraucht.
Schema hochladen
Nachdem Sie Ihr Schema erstellt haben, laden Sie das Schema basierend auf Ihrem Workflow hoch:
Verbrauch: Fügen Sie Integrationskonten Schemas für Verbrauchsworkflows hinzu
Standard: Hinzufügen von Schemas zu den Integrationskonten für Standard-Workflows
Hinzufügen einer Codierungsaktion für flache Dateien
Öffnen Sie Ihre Logik-App-Ressource im Azure-Portal.
Öffnen Sie im Designer Ihren Workflow.
Wenn Ihr Workflow keinen Trigger und keine anderen Aktionen enthält, die Ihr Workflow benötigt, fügen Sie diese Vorgänge zuerst hinzu.
In diesem Beispiel wird der Trigger Request namens „Wenn eine HTTP-Anforderung empfangen wird“ verwendet. Informationen zum Hinzufügen eines Triggers finden Sie unter Hinzufügen eines Triggers zum Starten des Workflows.
Führen Sie im Designer die folgenden allgemeinen Schritte aus, um die integrierte Aktion namens "Flat File Encoding" hinzuzufügen.
Der Aktionsinformationsbereich wird geöffnet, wobei die Registerkarte "Parameter " ausgewählt ist.
Geben Sie im Inhaltsparameter der Aktion den zu codierenden XML-Inhalt an, der entweder vom Trigger oder von einer vorherigen Aktion ausgegeben wird, indem Sie die folgenden Schritte ausführen:
Wählen Sie im Feld Inhalt das Blitzsymbol aus, um die dynamische Inhaltsliste zu öffnen.
Wählen Sie in der Liste dynamischer Inhalte den zu codierenden XML-Inhalt aus.
Das folgende Beispiel zeigt die geöffnete dynamische Inhaltsliste, die Ausgabe des Triggers "Wenn eine HTTP-Anforderung empfangen wird " und den ausgewählten Textkörperinhalt aus der Triggerausgabe.
Hinweis
Wenn Body nicht in der Liste der dynamischen Inhalte angezeigt wird, wählen Sie neben dem Abschnitt Wenn eine HTTP-Anforderung empfangen wurde die Option Mehr anzeigen aus. Sie können den zu codierenden Inhalt auch direkt in das Feld Inhalt eingeben.
Wählen Sie in der Liste Schemaname Ihr Schema aus.
Hinweis
Wenn die Schemaliste leer ist, kann die Ursache sein:
- Die Logik-App-Ressource ist nicht mit einem Integrationskonto verknüpft.
- Das verknüpfte Integrationskonto enthält keine Schemadateien.
- Die Logik-App-Ressource enthält keine Schemadateien. Dieser Grund gilt nur für Standardlogik-Apps.
Wenn Sie der Aktion weitere optionale Parameter hinzufügen möchten, wählen Sie diese Parameter aus der Liste "Erweiterte Parameter " aus.
Parameter Wert BESCHREIBUNG Modus der Generierung leerer Knoten ForcedDisabled oder HonorSchemaNodeProperty oder ForcedEnabled Der Modus, der zur Generierung leerer Knoten bei der Flatfile-Codierung verwendet werden soll.
Für BizTalk verfügt das Flatfile-Schema über eine Eigenschaft, die die Generierung leerer Knoten steuert. Sie können das Verhalten der Eigenschaft zur Generierung leerer Knoten für Ihr Flatfile-Schema verfolgen. Alternativ können Sie diese Einstellung verwenden, damit Azure Logic Apps leere Knoten generieren oder weglassen. Weitere Informationen finden Sie unter Tags für leere Elemente.XML-Normalisierung Ja oder Nein Die Einstellung zum Aktivieren oder Deaktivieren der XML-Normalisierung bei der Flatfile-Codierung. Weitere Informationen finden Sie unter XmlTextReader.Normalization. Speichern Sie den Workflow. Wählen Sie auf der Symbolleiste des Designers Speichern aus.
Hinzufügen einer Flatfile-Decodierungsaktion
Öffnen Sie Ihre Logik-App-Ressource im Azure-Portal.
Öffnen Sie im Designer Ihren Workflow.
Wenn Ihr Workflow keinen Trigger und keine anderen Aktionen enthält, die Ihr Workflow benötigt, fügen Sie diese Vorgänge zuerst hinzu.
In diesem Beispiel wird der Trigger Request namens „Wenn eine HTTP-Anforderung empfangen wird“ verwendet. Informationen zum Hinzufügen eines Triggers finden Sie unter Hinzufügen eines Triggers zum Starten des Workflows.
Führen Sie im Designer die folgenden allgemeinen Schritte aus, um die integrierte Aktion namens "Flat File Decoding" hinzuzufügen.
Geben Sie im Inhaltsparameter der Aktion den XML-Inhalt an, der decodiert werden soll, entweder als Ausgabe des Triggers oder aus einer vorherigen Aktion, indem Sie die folgenden Schritte ausführen:
Wählen Sie im Feld Inhalt das Blitzsymbol aus, um die dynamische Inhaltsliste zu öffnen.
Wählen Sie in der Liste dynamischer Inhalte den XML-Inhalt aus, der decodiert werden soll.
Das folgende Beispiel zeigt die geöffnete dynamische Inhaltsliste, die Ausgabe des Triggers "Wenn eine HTTP-Anforderung empfangen wird " und den ausgewählten Textkörperinhalt aus der Triggerausgabe.
Hinweis
Wenn Body nicht in der Liste der dynamischen Inhalte angezeigt wird, wählen Sie Mehr anzeigen neben der Abschnittsbezeichnung Wenn eine HTTP-Anforderung empfangen wird aus. Sie können den zu decodierenden Inhalt auch direkt in das Feld Inhalt eingeben.
Wählen Sie in der Liste Schemaname Ihr Schema aus.
Hinweis
Wenn die Schemaliste leer ist, kann die Ursache sein:
- Die Logik-App-Ressource ist nicht mit einem Integrationskonto verknüpft.
- Das verknüpfte Integrationskonto enthält keine Schemadateien.
- Die Logik-App-Ressource enthält keine Schemadateien. Dieser Grund gilt nur für Standardlogik-Apps.
Speichern Sie den Workflow. Wählen Sie auf der Symbolleiste des Designers Speichern aus.
Das Einrichten der Aktion „Flatfile decodieren“ ist damit abgeschlossen. In einer echten App empfiehlt es sich ggf., die decodierten Daten in einer branchenspezifischen App wie Salesforce zu speichern. Sie können die decodierten Daten auch an einen Handelspartner senden. Um die Ausgabe der Decodieraktion an Salesforce oder Ihren Handelspartner zu senden, verwenden Sie die anderen in Azure Logic Apps verfügbaren Connectors:
Testen des Workflows
Führen Sie die folgenden Schritte aus, um Ihren Workflow auszulösen:
Suchen Sie im Request-Trigger die HTTP POST-URL und kopieren Sie die URL.
Öffnen Sie Ihr HTTP-Anforderungstool, und verwenden Sie dessen Anweisungen, um eine HTTP-Anforderung an die kopierte URL zu senden, einschließlich der Methode, die der Trigger Anforderung erwartet.
Das folgende Beispiel verwendet die
POST-Methode mit der URL.Fügen Sie den XML-Inhalt, den Sie kodieren oder dekodieren möchten, in den Anfragetext ein.
Nachdem der Workflow abgeschlossen ist, wechseln Sie zum Ausführungsverlauf des Workflows, und überprüfen Sie die Eingaben und Ausgaben der Flat File-Aktion .