Codificare e decodificare file flat in App per la logica di Azure

Si applica a: App per la logica di Azure (consumo + standard)

Prima di inviare contenuto XML a un business partner in uno scenario business-to-business (B2B), è consigliabile codificare prima il contenuto. Se si riceve contenuto XML codificato, è necessario decodificare prima il contenuto. Quando si compila un flusso di lavoro dell'app per la logica in App per la logica di Azure, è possibile codificare e decodificare file flat usando le azioni del connettore predefinite file flat e uno schema di file flat per la codifica e la decodifica. È possibile usare le azioni file flat nei flussi di lavoro delle app per la logica a consumo multi-tenant e nei flussi di lavoro dell'app per la logica Standard a tenant singolo.

Anche se non sono disponibili trigger di file flat, è possibile usare qualsiasi trigger o azione per inserire il contenuto XML di origine nel flusso di lavoro. Ad esempio, è possibile usare un trigger connettore predefinito, un trigger del connettore gestito o ospitato in Azure disponibile per App per la logica di Azure o anche un'altra app.

Questo articolo illustra come aggiungere le azioni di codifica e decodifica file flat al flusso di lavoro.

  • Aggiungere un'azione di codifica o decodifica file flat al flusso di lavoro.
  • Selezionare lo schema da usare.

Per altre informazioni, vedere la documentazione seguente:

Prerequisiti

  • Account e sottoscrizione di Azure. Se non si ha ancora una sottoscrizione, iscriversi per ottenere un account Azure gratuito.

  • Flusso di lavoro dell'app per la logica, vuoto o esistente, in cui si vuole usare l'azione File flat.

    Se si dispone di un flusso di lavoro vuoto, usare qualsiasi trigger che si desidera avviare il flusso di lavoro. In questo esempio viene usato il trigger Request.

  • Risorsa e flusso di lavoro dell'app per la logica. Le operazioni di file flat non dispongono di trigger disponibili, pertanto il flusso di lavoro deve includere al minimo un trigger. Per altre informazioni, consultare la documentazione seguente:

  • Schema di file flat per la codifica e la decodifica del contenuto XML. Per altre informazioni, aggiungere schemi da usare con i flussi di lavoro in App per la logica di Azure.

  • In base al fatto che si stia lavorando a un flusso di lavoro dell'app per la logica a consumo o Standard, è necessaria una risorsa dell'account di integrazione. In genere, questa risorsa è necessaria quando si vogliono definire e archiviare artefatti da usare nei flussi di lavoro di integrazione aziendale e B2B.

    Importante

    Per collaborare, sia l'account di integrazione che la risorsa dell'app per la logica devono esistere nella stessa sottoscrizione di Azure e nella stessa area di Azure.

    • Se si usa un flusso di lavoro dell'app per la logica a consumo, la risorsa dell'app per la logica richiede un collegamento all'account di integrazione.

    • Se si usa un flusso di lavoro dell'app per la logica Standard, è possibile collegare la risorsa dell'app per la logica all'account di integrazione, caricare gli schemi direttamente nella risorsa dell'app per la logica o entrambi, in base agli scenari seguenti:

      • Se si ha già un account di integrazione con gli artefatti necessari o da usare, è possibile collegare l'account di integrazione a più risorse dell'app per la logica Standard in cui si vogliono usare gli artefatti. In questo modo, non è necessario caricare schemi in ogni singola app per la logica. Per altre informazioni, vedere Collegare la risorsa dell'app per la logica all'account di integrazione.

      • Il connettore predefinito File flat consente di selezionare uno schema caricato in precedenza nella risorsa dell'app per la logica o in un account di integrazione collegato, ma non entrambi. È quindi possibile usare questo artefatto in tutti i flussi di lavoro figlio all'interno della stessa risorsa dell'app per la logica.

      Pertanto, se non si ha o non è necessario un account di integrazione, è possibile usare l'opzione di caricamento. In caso contrario, è possibile usare l'opzione di collegamento. In entrambi i casi, è possibile usare questi artefatti in tutti i flussi di lavoro figlio all'interno della stessa risorsa dell'app per la logica.

Limiti

  • Il contenuto XML da decodificare deve essere codificato in formato UTF-8.

  • Nello schema di file flat verificare che i gruppi XML contenuti non abbiano un numero eccessivo di max count proprietà impostato su un valore maggiore di 1. Evitare di annidare un gruppo XML con un max count valore di proprietà maggiore di 1 all'interno di un altro gruppo XML con una max count proprietà maggiore di 1.

  • Quando App per la logica di Azure analizza lo schema di file flat e ogni volta che lo schema consente la scelta del frammento successivo, App per la logica di Azure genera un simbolo e una stima per tale frammento. Se lo schema consente troppi costrutti di questo tipo, ad esempio più di 100.000, l'espansione dello schema diventa eccessivamente grande, che consuma troppe risorse e tempo.

Caricare lo schema

Dopo aver creato lo schema, è ora necessario caricare lo schema in base allo scenario seguente:

Aggiungere un'azione di codifica file flat

  1. Nel portale di Azure aprire il flusso di lavoro dell'app per la logica nella finestra di progettazione, se non è già aperto.

  2. Se il flusso di lavoro non ha un trigger o altre azioni necessarie per il flusso di lavoro, aggiungere prima tali operazioni. Le operazioni file flat non dispongono di trigger disponibili.

    Questo esempio continua con il trigger Request denominato Quando viene ricevuta una richiesta HTTP.

  3. Nella finestra di progettazione del flusso di lavoro, nel passaggio in cui si vuole aggiungere l'azione File flat, selezionare Nuovo passaggio.

  4. Nella casella di ricerca Scegliere un'operazione selezionare Predefinita. Nella casella di ricerca immettere file flat.

  5. Nell'elenco delle azioni selezionare l'azione denominata Codifica file flat.

    Screenshot showing Azure portal and Consumption workflow designer with

  6. Nella proprietà Content dell'azione specificare l'output del trigger o un'azione precedente da codificare seguendo questa procedura:

    1. Fare clic all'interno della casella Contenuto in modo che venga visualizzato l'elenco di contenuto dinamico.

    2. Nell'elenco di contenuto dinamico selezionare il contenuto del file flat da codificare.

      Per questo esempio, dall'elenco di contenuto dinamico, in Quando viene ricevuta una richiesta HTTP, selezionare il token Corpo , che rappresenta l'output del contenuto del corpo dal trigger.

    Screenshot showing Consumption workflow designer and

    Nota

    Se la proprietà Body non viene visualizzata nell'elenco di contenuto dinamico, selezionare Visualizza altro accanto all'etichetta di sezione Quando viene ricevuta una richiesta HTTP. È anche possibile immettere direttamente il contenuto da codificare nella casella Contenuto .

  7. Nell'elenco Nome schema selezionare lo schema.

    Screenshot showing Consumption workflow designer and opened

    Nota

    Se l'elenco di schemi è vuoto, la risorsa dell'app per la logica non è collegata all'account di integrazione o l'account di integrazione non contiene file di schema.

    Al termine, l'azione avrà un aspetto simile al seguente:

    Screenshot showing Consumption workflow with finished

  8. Per aggiungere altri parametri facoltativi all'azione, selezionare questi parametri dall'elenco Aggiungi nuovo parametro .

    Parametro valore Descrizione
    Modalità di generazione di nodi vuoti ForcedDisabled o HonorSchemaNodeProperty o ForcedEnabled Modalità da usare per la generazione di nodi vuoti con codifica file flat.

    Per BizTalk, lo schema di file flat ha una proprietà che controlla la generazione di nodi vuoti. È possibile seguire il comportamento della proprietà di generazione di nodi vuoto per lo schema di file flat oppure usare questa impostazione per avere App per la logica di Azure generare o omettere nodi vuoti. Per altre informazioni, vedere Tag per elementi vuoti.
    Normalizzazione XML o No Impostazione per abilitare o disabilitare la normalizzazione XML nella codifica di file flat. Per altre informazioni, vedere XmlTextReader.Normalization.
  9. Salvare il flusso di lavoro. Sulla barra degli strumenti della finestra di progettazione seleziona Salva.

Aggiungere un'azione di decodifica file flat

  1. Nel portale di Azure aprire il flusso di lavoro dell'app per la logica nella finestra di progettazione, se non è già aperto.

  2. Se il flusso di lavoro non ha un trigger o altre azioni necessarie per il flusso di lavoro, aggiungere prima tali operazioni. Le operazioni file flat non dispongono di trigger disponibili.

    Questo esempio continua con il trigger Request denominato Quando viene ricevuta una richiesta HTTP.

  3. Nella finestra di progettazione del flusso di lavoro, nel passaggio in cui si vuole aggiungere l'azione File flat, selezionare Nuovo passaggio.

  4. Nella casella di ricerca Scegliere un'operazione selezionare Predefinita. Nella casella di ricerca immettere file flat.

  5. Nell'elenco delle azioni selezionare l'azione denominata Decodifica file flat.

    Screenshot showing Azure portal and Consumption workflow designer with

  6. Nella proprietà Content dell'azione specificare l'output del trigger o un'azione precedente da decodificare seguendo questa procedura:

    1. Fare clic all'interno della casella Contenuto in modo che venga visualizzato l'elenco di contenuto dinamico.

    2. Nell'elenco di contenuto dinamico selezionare il contenuto del file flat da codificare.

      Per questo esempio, dall'elenco di contenuto dinamico, in Quando viene ricevuta una richiesta HTTP, selezionare il token Corpo , che rappresenta l'output del contenuto del corpo dal trigger.

    Screenshot showing the Consumption workflow designer and

    Nota

    Se la proprietà Body non viene visualizzata nell'elenco di contenuto dinamico, selezionare Visualizza altro accanto all'etichetta di sezione Quando viene ricevuta una richiesta HTTP. È anche possibile immettere direttamente il contenuto da codificare nella casella Contenuto .

  7. Nell'elenco Nome schema selezionare lo schema.

    Screenshot showing Consumption workflow designer and opened

    Nota

    Se l'elenco di schemi è vuoto, la risorsa dell'app per la logica non è collegata all'account di integrazione o l'account di integrazione non contiene file di schema.

    Al termine, l'azione avrà un aspetto simile al seguente:

    Screenshot showing Consumption workflow with finished

  8. Salvare il flusso di lavoro. Sulla barra degli strumenti della finestra di progettazione seleziona Salva.

A questo scopo, è possibile configurare l'azione di decodifica file flat. In un'app reale, è possibile archiviare i dati decodificati in un'app line-of-business (LOB), ad esempio Salesforce. In alternativa, è possibile inviare i dati decodificati a un partner commerciale. Per inviare l'output dall'azione di decodifica a Salesforce o al partner commerciale, usare gli altri connettori disponibili in App per la logica di Azure:

Testare il flusso di lavoro

  1. Usando Postman o uno strumento simile e il POST metodo , inviare una chiamata all'URL del trigger di richiesta, visualizzato nella proprietà URL POST HTTP del trigger di richiesta e includere il contenuto XML da codificare o decodificare nel corpo della richiesta.

  2. Al termine dell'esecuzione del flusso di lavoro, passare alla cronologia di esecuzione del flusso di lavoro ed esaminare gli input e gli output dell'azione File flat.

Passaggi successivi