Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questa esercitazione illustra come integrare l'app del servizio app con i processi aziendali usando App per la logica di Azure. Si crea un'app per la logica che invia messaggi di posta elettronica tramite Gmail dall'app del servizio app di Azure.
Esistono altri modi per inviare messaggi di posta elettronica da un'app Web, ad esempio usando la configurazione SMTP (Simple Mail Transfer Protocol) nel framework del linguaggio. Tuttavia, App per la logica offre un'interfaccia di configurazione semplice per molte integrazioni aziendali senza aggiungere complessità al codice.
È possibile usare i passaggi illustrati in questa esercitazione per implementare diversi scenari comuni di app Web, ad esempio:
- Invio di un messaggio di posta elettronica di conferma per una transazione.
- Aggiunta di utenti al gruppo facebook.
- Connessione a sistemi esterni come SAP e Salesforce.
- Scambio di messaggi B2B standard.
Prerequisiti
Per completare questa esercitazione, è necessario disporre dei prerequisiti seguenti:
Un account Gmail.
Un account Azure con l'autorizzazione per creare risorse.
Un'app del servizio app di Azure distribuita nella lingua preferita. È possibile usare l'app di esempio da una delle esercitazioni seguenti:
Creare l'app per la logica.
Creare un'app a consumo multi-tenant in App per la logica di Azure seguendo le istruzioni riportate in Creare una risorsa dell'app per la logica a consumo. Quando l'app viene creata, selezionare Vai alla risorsa.
Nella pagina dell'app per la logica selezionare Progettazione app per la logica in Strumenti di sviluppo nel menu di spostamento a sinistra.
Aggiungere il trigger
Selezionare Aggiungi un trigger nell'area di disegno della finestra di progettazione dell'app per la logica.
Nella schermata Aggiungi trigger in Strumenti predefiniti selezionare Richiesta e nella schermata successiva selezionare Quando viene ricevuta una richiesta HTTP.
Il trigger viene visualizzato nell'area di disegno della finestra di progettazione.
Nella schermata Quando viene ricevuta una richiesta HTTP selezionare Usa payload di esempio per generare lo schema.
Incollare il codice seguente nella schermata Immettere o incollare un payload JSON di esempio e quindi selezionare Fine.
{ "task": "<description>", "due": "<date>", "email": "<email-address>" }Azure genera lo schema per i dati della richiesta immessi. In pratica, è possibile acquisire i dati effettivi delle richieste dal codice dell'applicazione e usarli per generare lo schema JSON.
Nella barra degli strumenti superiore della finestra di progettazione dell'app per la logica selezionare Salva.
L'URL HTTP generato viene ora visualizzato nella schermata Quando viene ricevuta una richiesta HTTP . Selezionare l'icona di copia per copiare l'URL da usare in un secondo momento.
La definizione della richiesta HTTP è un trigger per qualsiasi operazione che si vuole eseguire in questo flusso di lavoro dell'app per la logica, ad esempio l'invio di messaggi di posta elettronica. Successivamente si richiama questo URL nell'app del servizio app. Per altre informazioni sul trigger di richiesta, vedere Ricevere e rispondere alle chiamate HTTPS in ingresso inviate ai flussi di lavoro in App per la logica di Azure.
Creare il messaggio di posta elettronica
Aggiungere un'azione invia messaggio di posta elettronica e popolare il messaggio di posta elettronica con le tre proprietà della richiesta HTTP immesse in precedenza.
Nell'area di disegno della finestra di progettazione selezionare sotto + il trigger e selezionare Aggiungi un'azione.
Nella schermata Aggiungi un'azione immettere gmail nella casella di ricerca e quindi selezionare Invia messaggio di posta elettronica (V2).
Suggerimento
È possibile cercare altri tipi di integrazioni, ad esempio SendGrid, MailChimp, Microsoft 365 e SalesForce. Per altre informazioni, vedere Connettori gestiti per App per la logica di Azure.
Nella schermata Crea connessione selezionare Accedi per autenticare l'accesso all'account Gmail da cui inviare il messaggio di posta elettronica.
Dopo aver eseguito l'accesso, selezionare all'interno del campo A nella schermata Invia messaggio di posta elettronica (V2) per visualizzare l'icona del contenuto dinamico. Selezionare la parte superiore del fulmine dell'icona.
Viene visualizzato l'elenco di contenuto dinamico, che mostra le tre proprietà della richiesta HTTP immesse in precedenza. Selezionare posta elettronica dall'elenco.
Nella schermata Invia messaggio di posta elettronica (V2) l'elemento di posta elettronica viene visualizzato nel campo A . Nell'elenco a discesa in Parametri avanzati selezionare Oggetto e Corpo.
I campi Oggetto e Corpo vengono visualizzati nella schermata Invia messaggio di posta elettronica (V2). Selezionare nel campo Oggetto per visualizzare l'icona del contenuto dinamico e selezionare l'attività dall'elenco di contenuto dinamico.
Nel campo Oggetto accanto all'attività digitare uno spazio seguito da creato.
Selezionare all'interno del campo Corpo , visualizzare l'elenco di contenuto dinamico e selezionare due.
Nel campo Corpo spostare il cursore prima della scadenza e immettere Questo elemento di lavoro è dovuto a seguito di uno spazio.
Aggiungere una risposta
Aggiungere una risposta HTTP asincrona al trigger HTTP.
Nell'area di disegno della finestra di progettazione selezionare tra il + trigger della richiesta HTTP e l'azione Gmail e selezionare Aggiungi un ramo parallelo.
Nella schermata Aggiungi un'azione immettere la risposta nel campo di ricerca e quindi selezionare Risposta.
Per impostazione predefinita, l'azione di risposta invia un
HTTP 200oggetto , sufficiente per questa esercitazione. Per altre informazioni, vedere Ricevere e rispondere alle chiamate HTTPS in ingresso inviate ai flussi di lavoro in App per la logica di Azure.Selezionare Salva sulla barra degli strumenti della finestra di progettazione dell'app per la logica.
Aggiungere il codice della richiesta HTTP all'app del servizio app
È consigliabile evitare di inserire informazioni riservate come l'URL del trigger di richiesta direttamente nel codice dell'app del servizio app. È invece possibile fare riferimento all'URL come variabile di ambiente dalle impostazioni dell'app del servizio app. Il comando seguente crea una variabile di ambiente denominata LOGIC_APP_URL per l'URL HTTP dell'app per la logica.
In Azure Cloud Shell eseguire il comando seguente dell'interfaccia della riga di comando di Azure per creare l'impostazione dell'app. Sostituire
<app-name>e<resource-group-name>con i nomi dell'app del servizio app e dei gruppi di risorse. Sostituire<http-url>con l'URL HTTP copiato dall'app per la logica.az webapp config appsettings set --name <app-name> --resource-group <resource-group-name> --settings LOGIC_APP_URL="<http-url>"Nel codice creare un post HTTP standard per l'URL dell'app per la logica usando un linguaggio client HTTP disponibile per il framework di linguaggio, con la configurazione seguente:
Assicurarsi che la richiesta contenga l'intestazione
Content-Type: application/json.Usare lo stesso formato JSON fornito all'app per la logica nel corpo della richiesta:
{ "task": "<description>", "due": "<date>", "email": "<email-address>" }Per ottimizzare le prestazioni, inviare la richiesta in modo asincrono, se possibile.
Per istruzioni di registrazione, vedere la documentazione relativa al framework preferito.
Esempi di codice di richiesta/risposta di esempio
Selezionare il linguaggio/framework preferito per visualizzare una richiesta e una risposta di esempio. Alcuni esempi richiedono l'uso o l'installazione di pacchetti di codice.
In ASP.NET Core è possibile inviare la richiesta HTTP POST con la classe System.Net.Http.HttpClient. L'esempio di codice seguente richiede l'uso di System.Net.Http e System.Text.Json. Richiede HttpResponseMessage la configurazione di inserimento delle dipendenze per accedere alle impostazioni dell'app. Per altre informazioni, vedere Accedere alle variabili di ambiente.
// requires using System.Net.Http;
var client = new HttpClient();
// requires using System.Text.Json;
var jsonData = JsonSerializer.Serialize(new
{
email = "someone@example.com",
due = "4/1/2025",
task = "My new task!"
});
HttpResponseMessage result = await client.PostAsync(
// Requires DI configuration to access app settings
_configuration["LOGIC_APP_URL"],
new StringContent(jsonData, Encoding.UTF8, "application/json"));
var statusCode = result.StatusCode.ToString();
Nota
Questo codice dimostrativo viene scritto per semplicità. In pratica, non si crea un'istanza di un HttpClient oggetto per ogni richiesta. Seguire le indicazioni fornite in Usare IHttpClientFactory per implementare richieste HTTP resilienti.
Suggerimento
Se si usa l'app di esempio dell'esercitazione: Creare un'app core e database SQL di ASP.NET nel servizio app di Azure, è possibile usare questo codice per inviare una conferma tramite posta elettronica nell'azione Crea dopo aver aggiunto un Todo elemento.
Contenuti correlati
- Esercitazione: Ospitare un'API RESTful con CORS nel servizio app Azure
- Ricevere e rispondere alle chiamate HTTPS in ingresso inviate ai flussi di lavoro in App per la logica di Azure
- Guida introduttiva: Creare un flusso di lavoro a consumo di esempio in App per la logica di Azure multi-tenant - portale di Azure
- Informazioni di riferimento sulle variabili di ambiente e impostazioni dell'app