Platte bestanden coderen en decoderen in Azure Logic Apps
Van toepassing op: Azure Logic Apps (Verbruik + Standard)
Voordat u XML-inhoud naar een zakenpartner verzendt in een B2B-scenario (business-to-business), wilt u die inhoud misschien eerst coderen. Als u gecodeerde XML-inhoud ontvangt, moet u die inhoud eerst decoderen. Wanneer u een werkstroom voor logische apps bouwt in Azure Logic Apps, kunt u platte bestanden coderen en decoderen met behulp van de ingebouwde connectoracties voor plat bestand en een plat bestandsschema voor codering en decodering. U kunt platte bestandsacties gebruiken in werkstromen voor logische apps met meerdere tenants en werkstromen voor logische apps met één tenant.
Hoewel er geen triggers voor plat bestand beschikbaar zijn, kunt u elke trigger of actie gebruiken om de bron-XML-inhoud in uw werkstroom in te voeren. U kunt bijvoorbeeld een ingebouwde connectortrigger, een beheerde of door Azure gehoste connectortrigger gebruiken die beschikbaar is voor Azure Logic Apps of zelfs een andere app.
In dit artikel wordt beschreven hoe u de coderings- en decoderingsacties voor plat bestand toevoegt aan uw werkstroom.
- Voeg een coderings- of decoderingsactie plat bestand toe aan uw werkstroom.
- Selecteer het schema dat u wilt gebruiken.
Raadpleeg de volgende documentatie voor meer informatie:
- Verbruik versus standaard logische apps
- Ingebouwde connectors voor integratieaccounts
- Overzicht van ingebouwde connectors voor Azure Logic Apps
- Beheerde of door Azure gehoste connectors in Azure Logic Apps
Vereisten
Een Azure-account en -abonnement. Als u nog geen abonnement hebt, meldt u zich aan voor een gratis Azure-account.
De werkstroom van de logische app, leeg of bestaand, waar u de actie Plat bestand wilt gebruiken.
Als u een lege werkstroom hebt, gebruikt u een trigger die u wilt starten met de werkstroom. In dit voorbeeld wordt de aanvraagtrigger gebruikt.
De resource en werkstroom van uw logische app. Platte bestandsbewerkingen hebben geen triggers beschikbaar, dus uw werkstroom moet minimaal een trigger bevatten. Voor meer informatie raadpleegt u de volgende documentatie:
Een plat bestandsschema voor het coderen en decoderen van de XML-inhoud. Voeg schema's toe voor gebruik met werkstromen in Azure Logic Apps voor meer informatie.
Op basis van of u werkt aan een werkstroom voor een verbruiks- of Standard-logische app, hebt u een integratieaccountresource nodig. Normaal gesproken hebt u deze resource nodig wanneer u artefacten wilt definiëren en opslaan voor gebruik in bedrijfsintegratie en B2B-werkstromen.
Belangrijk
Als u wilt samenwerken, moeten zowel uw integratieaccount als de resource van de logische app zich in hetzelfde Azure-abonnement en dezelfde Azure-regio bevinden.
Als u aan een werkstroom voor logische app Verbruik werkt, is voor uw logische app-resource een koppeling naar uw integratieaccount vereist.
Als u aan een werkstroom voor een standaard logische app werkt, kunt u de resource van uw logische app koppelen aan uw integratieaccount, schema's rechtstreeks uploaden naar uw logische app-resource of beide, op basis van de volgende scenario's:
Als u al een integratieaccount hebt met de artefacten die u nodig hebt of wilt gebruiken, kunt u uw integratieaccount koppelen aan meerdere resources van de logische standaard-app waar u de artefacten wilt gebruiken. Op die manier hoeft u geen schema's te uploaden naar elke afzonderlijke logische app. Zie Uw logische app-resource koppelen aan uw integratieaccount voor meer informatie.
Met de ingebouwde connector Flat File kunt u een schema selecteren dat u eerder hebt geüpload naar uw logische app-resource of naar een gekoppeld integratieaccount, maar niet beide. U kunt dit artefact vervolgens gebruiken voor alle onderliggende werkstromen binnen dezelfde logische app-resource.
Als u dus geen integratieaccount hebt of nodig hebt, kunt u de optie uploaden gebruiken. Anders kunt u de koppelingsoptie gebruiken. In beide gevallen kunt u deze artefacten gebruiken voor alle onderliggende werkstromen binnen dezelfde logische app-resource.
Installeer of gebruik een hulpprogramma waarmee HTTP-aanvragen kunnen worden verzonden om uw oplossing te testen, bijvoorbeeld:
- Visual Studio Code met een extensie van Visual Studio Marketplace
- PowerShell Invoke-RestMethod
- Microsoft Edge - Hulpprogramma voor netwerkconsole
- Bruno
- curl
Let op
Voor scenario's waarin u gevoelige gegevens hebt, zoals referenties, geheimen, toegangstokens, API-sleutels en andere vergelijkbare informatie, moet u een hulpprogramma gebruiken waarmee uw gegevens worden beveiligd met de benodigde beveiligingsfuncties, offline of lokaal werken, uw gegevens niet worden gesynchroniseerd met de cloud en u zich niet hoeft aan te melden bij een onlineaccount. Op deze manier vermindert u het risico dat gevoelige gegevens openbaar worden gemaakt voor het publiek.
Beperkingen
XML-inhoud die u wilt decoderen, moet worden gecodeerd in UTF-8-indeling.
Zorg ervoor dat in het schema voor platte bestanden geen overmatige aantallen van de
max count
eigenschap zijn ingesteld op een waarde die groter is dan 1. Vermijd het nesten van een XML-groep met eenmax count
eigenschapswaarde groter dan 1 in een andere XML-groep met eenmax count
eigenschap groter dan 1.Wanneer Azure Logic Apps het platte bestandsschema parseert en wanneer het schema de keuze van het volgende fragment toestaat, genereert Azure Logic Apps een symbool en een voorspelling voor dat fragment. Als het schema te veel dergelijke constructies toestaat, bijvoorbeeld meer dan 100.000, wordt de schema-uitbreiding te groot, wat te veel resources en tijd verbruikt.
Schema uploaden
Nadat u uw schema hebt gemaakt, moet u het schema nu uploaden op basis van het volgende scenario:
Als u aan een werkstroom voor logische verbruiks-apps werkt, voegt u uw schema toe aan uw integratieaccount.
Als u aan een werkstroom voor een standaard logische app werkt, kunt u uw schema toevoegen aan uw integratieaccount of uw schema toevoegen aan de resource van uw logische app.
Een coderingsactie Plat bestand toevoegen
Open in Azure Portal uw werkstroom voor logische apps in de ontwerpfunctie, als deze nog niet is geopend.
Als uw werkstroom geen trigger of andere acties heeft die uw werkstroom nodig heeft, voegt u deze bewerkingen eerst toe. Platte bestandsbewerkingen hebben geen triggers beschikbaar.
In dit voorbeeld wordt de aanvraagtrigger voortgezet met de naam Wanneer een HTTP-aanvraag wordt ontvangen.
Selecteer in de werkstroomontwerper onder de stap waar u de actie Plat bestand wilt toevoegen de optie Nieuwe stap.
Selecteer Ingebouwd in het zoekvak Kies een bewerking. Voer in het zoekvak een plat bestand in.
Selecteer in de lijst met acties de actie met de naam Platte bestandscodering.
Geef in de eigenschap Inhoud van de actie de uitvoer op van de trigger of een vorige actie die u wilt coderen door de volgende stappen uit te voeren:
Klik in het vak Inhoud , zodat de lijst met dynamische inhoud wordt weergegeven.
Selecteer in de lijst met dynamische inhoud de platte bestandsinhoud die u wilt coderen.
Voor dit voorbeeld selecteert u in de lijst met dynamische inhoud onder Wanneer een HTTP-aanvraag wordt ontvangen het hoofdteksttoken , dat de uitvoer van de hoofdtekst van de trigger vertegenwoordigt.
Notitie
Als de eigenschap Hoofdtekst niet wordt weergegeven in de lijst met dynamische inhoud, selecteert u Meer weergeven naast het sectielabel Wanneer een HTTP-aanvraag wordt ontvangen . U kunt de inhoud ook rechtstreeks invoeren om te coderen in het vak Inhoud .
Selecteer uw schema in de lijst Schemanaam .
Notitie
Als de schemalijst leeg is, is uw logische app-resource niet gekoppeld aan uw integratieaccount of bevat uw integratieaccount geen schemabestanden.
Wanneer u klaar bent, ziet uw actie er ongeveer als volgt uit:
Als u andere optionele parameters aan de actie wilt toevoegen, selecteert u deze parameters in de lijst Nieuwe parameters toevoegen.
Parameter Weergegeven als Beschrijving Modus voor het genereren van lege knooppunten ForcedDisabled of HonorSchemaNodeProperty of ForcedEnabled De modus die moet worden gebruikt voor het genereren van lege knooppunten met platte bestandscodering.
Voor BizTalk heeft het platte bestandsschema een eigenschap waarmee het genereren van lege knooppunten wordt bepaald. U kunt het gedrag van de eigenschap voor het genereren van lege knooppunten voor uw platte bestandsschema volgen of u kunt deze instelling gebruiken om lege knooppunten te genereren of weg te laten. Zie Tags voor lege elementen voor meer informatie.XML-normalisatie Ja of Nee De instelling voor het in- of uitschakelen van XML-normalisatie in platte bestandscodering. Zie XmlTextReader.Normalization voor meer informatie. Sla uw werkstroom op. Selecteer in de werkbalk van de ontwerper Opslaan.
Een decoderingsactie Plat bestand toevoegen
Open in Azure Portal uw werkstroom voor logische apps in de ontwerpfunctie, als deze nog niet is geopend.
Als uw werkstroom geen trigger of andere acties heeft die uw werkstroom nodig heeft, voegt u deze bewerkingen eerst toe. Platte bestandsbewerkingen hebben geen triggers beschikbaar.
In dit voorbeeld wordt de aanvraagtrigger voortgezet met de naam Wanneer een HTTP-aanvraag wordt ontvangen.
Selecteer in de werkstroomontwerper onder de stap waar u de actie Plat bestand wilt toevoegen de optie Nieuwe stap.
Selecteer Ingebouwd in het zoekvak Kies een bewerking. Voer in het zoekvak een plat bestand in.
Selecteer in de lijst met acties de actie met de naam Flat File Decoding.
Geef in de eigenschap Inhoud van de actie de uitvoer op van de trigger of een vorige actie die u wilt decoderen door de volgende stappen uit te voeren:
Klik in het vak Inhoud , zodat de lijst met dynamische inhoud wordt weergegeven.
Selecteer in de lijst met dynamische inhoud de platte bestandsinhoud die u wilt coderen.
Voor dit voorbeeld selecteert u in de lijst met dynamische inhoud onder Wanneer een HTTP-aanvraag wordt ontvangen het hoofdteksttoken , dat de uitvoer van de hoofdtekst van de trigger vertegenwoordigt.
Notitie
Als de eigenschap Hoofdtekst niet wordt weergegeven in de lijst met dynamische inhoud, selecteert u Meer weergeven naast het sectielabel Wanneer een HTTP-aanvraag wordt ontvangen . U kunt de inhoud ook rechtstreeks invoeren om te coderen in het vak Inhoud .
Selecteer uw schema in de lijst Schemanaam .
Notitie
Als de schemalijst leeg is, is uw logische app-resource niet gekoppeld aan uw integratieaccount of bevat uw integratieaccount geen schemabestanden.
Wanneer u klaar bent, ziet uw actie er ongeveer als volgt uit:
Sla uw werkstroom op. Selecteer in de werkbalk van de ontwerper Opslaan.
U bent nu klaar met het instellen van de actie voor het decoderen van platte bestanden. In een echte app wilt u mogelijk de gedecodeerde gegevens opslaan in een LOB-app (Line-Of-Business), zoals Salesforce. U kunt de gedecodeerde gegevens ook verzenden naar een handelspartner. Als u de uitvoer van de decoderingsactie naar Salesforce of uw handelspartner wilt verzenden, gebruikt u de andere connectors die beschikbaar zijn in Azure Logic Apps:
Uw werkstroom testen
Voer de volgende stappen uit om uw werkstroom te activeren:
Zoek in de aanvraagtrigger de EIGENSCHAP HTTP POST URL en kopieer de URL.
Open uw HTTP-aanvraagprogramma en gebruik de bijbehorende instructies om een HTTP-aanvraag naar de gekopieerde URL te verzenden, inclusief de methode die de aanvraagtrigger verwacht.
In dit voorbeeld wordt de
POST
methode met de URL gebruikt.Neem de XML-inhoud op die u wilt coderen of decoderen in de hoofdtekst van de aanvraag.
Nadat de werkstroom is uitgevoerd, gaat u naar de uitvoeringsgeschiedenis van de werkstroom en bekijkt u de invoer en uitvoer van de actie Plat bestand.
Volgende stappen
- Meer informatie over het Enterprise Integration Pack