Accedere a un'API con un connettore personalizzato di App per la logica di Azure

Completato

In qualità di sviluppatore principale di un'azienda di cornici di stampa, vuoi chiamare un'API Web interna e personalizzata dal flusso di lavoro in App per la logica di Azure. L'API calcola il prezzo di una cornice in base alle dimensioni della cornice. Per accedere all'API dal flusso di lavoro di App per la logica di Azure, è necessario creare un connettore personalizzato.

In questa unità si apprenderà come creare e usare connettori personalizzati in un flusso di lavoro di App per la logica di Azure.

Perché creare connettori personalizzati?

A volte i connettori predefiniti non sono sufficienti per scenari specifici del flusso di lavoro. Si supponga di avere un'API interna o personalizzata che si vuole chiamare dal flusso di lavoro. I connettori predefiniti in App per la logica di Azure non supportano questo scenario. È invece necessario creare un connettore personalizzato che descriva l'API. Definire i trigger nel connettore quando si vuole che il flusso di lavoro risponda a un evento API. Definire le azioni nel connettore quando si vuole che il flusso di lavoro effettui chiamate all'API.

Descrivere un'API Web per un connettore personalizzato

È possibile creare un connettore personalizzato nel portale di Azure e fare riferimento all'API di destinazione. L'API deve descrivere se stessa per il connettore personalizzato. In questo modo, il connettore può presentare i metodi e i parametri corretti ad App per la logica di Azure. Nell'API è possibile implementare questa descrizione usando una definizione OpenAPI o una raccolta Postman. Esaminiamo questi due modi per descrivere un'API.

App Postman

L'app Postman richiede di fornire l'URL della richiesta e l'eventuale autenticazione necessaria. Occorre anche specificare la chiave API e il tipo di contenuto con la definizione per il corpo della richiesta in formato JSON. Quando si invia la richiesta dall'app Postman, l'API restituisce una risposta. L'app Postman usa la risposta per generare una raccolta. È possibile esportare e usare la raccolta per descrivere l'API per un connettore personalizzato.

Definizione OpenAPI

Un file di definizione OpenAPI è un file JSON che elenca i metodi, i parametri e gli output dell'API. In .NET è possibile creare un file OpenAPI aggiungendo il pacchetto NuGet Swashbuckle al progetto dell'API. Aggiungere quindi il codice seguente al codice sorgente dell'API Web:

  1. Nel file Startup.cs aggiungere un'istruzione using per Swashbuckle:

    using Swashbuckle.AspNetCore.Swagger;
    
  2. Aggiungere il codice seguente al metodo ConfigureServices:

    services.AddSwaggerGen(c =>
    {
       c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" });
    });
    
  3. Aggiungere il codice seguente al metodo Configure:

    if (env.IsDevelopment())
    {
       // Enable middleware to serve generated Swagger as a JSON endpoint.
       app.UseSwagger();
    
       // Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.), 
       // specifying the Swagger JSON endpoint.
       app.UseSwaggerUI(c =>
       {
          c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
       });
    }
    

    Durante la distribuzione, questo codice installa l'interfaccia utente di Swagger, ovvero una pagina Web che puoi usare per testare i metodi dell'API Web. Il codice, inoltre, genera e pubblica un file JSON che descrive l'API ed è conforme allo standard OpenAPI. È possibile scaricare e usare il file JSON per creare un connettore personalizzato in App per la logica di Azure.

    Nota

    Nell'esercizio precedente è stata distribuita un'API Web predefinita in Azure. Per impostazione predefinita, questa distribuzione includeva il codice Swagger precedente. Nell'esercizio successivo si caricherà il file OpenAPI creato da Swagger nel connettore personalizzato.

Creare un connettore personalizzato nel portale di Azure

Dopo aver implementato la descrizione come raccolta Postman o file di definizione OpenAPI, è possibile creare il connettore personalizzato nel portale di Azure seguendo questa procedura generale:

  1. Creare una nuova risorsa di Azure usando il tipo di risorsa Connettore personalizzato per app per la logica.

  2. Caricare il file Postman Collection o il file di definizione OpenAPI.

    Screenshot that shows how to upload an OpenAPI file for a custom connector.

  3. Seguire le istruzioni della procedura guidata di installazione per completare la creazione del connettore.

    Ad esempio, è possibile specificare il nome del connettore visualizzato dagli sviluppatori nella finestra di progettazione del flusso di lavoro. È possibile aggiungere descrizioni per consentire agli sviluppatori di configurare connessioni sicure e usare correttamente il connettore.

  4. Salvare il nuovo connettore.

Al termine, è possibile usare il connettore nel flusso di lavoro di App per la logica di Azure. Il prossimo esercizio ti illustra come creare un connettore personalizzato.