Associazioni di SendGrid di Funzioni di Azure

Questo articolo illustra come configurare e usare le associazioni SendGrid in Funzioni di Azure. Con Sendgrid è possibile usare Funzioni di Azure per inviare messaggi di posta elettronica personalizzati a livello programmatico.

Questo articolo contiene le informazioni di riferimento per gli sviluppatori di Funzioni di Azure. Se non si ha familiarità con le Funzioni di Azure, iniziare con le seguenti risorse:

Creare la prima funzione di Azure. Informazioni di riferimento per sviluppatori su C#, F# o Node.

function.json per associazioni di SendGrid

Funzioni di Azure offre associazioni di output per SendGrid. L'associazione di output di SendGrid consente di creare e inviare messaggi di posta elettronica a livello programmatico.

L'associazione SendGrid supporta le proprietà seguenti:

Proprietà Descrizione
nome Obbligatoria. Nome della variabile usato nel codice della funzione per la richiesta o il corpo della richiesta. Questo valore è $return quando viene restituito un solo valore.
type Obbligatoria. Deve essere impostata su sendGrid.
direction Obbligatoria. Deve essere impostata su out.
apiKey Obbligatoria. Deve essere impostata sul nome della chiave API archiviata nelle impostazioni dell'app per le funzioni.
to Indirizzo e-mail del destinatario.
from Indirizzo e-mail del mittente.
subject Oggetto del messaggio di posta elettronica.
text Contenuto del messaggio di posta elettronica.

function.json di esempio:

{
    "bindings": [
        {
            "name": "$return",
            "type": "sendGrid",
            "direction": "out",
            "apiKey" : "MySendGridKey",
            "to": "{ToEmail}",
            "from": "{FromEmail}",
            "subject": "SendGrid output bindings"
        }
    ]
}

Nota

Funzioni di Azure archivia le informazioni di connessione e le chiavi API come impostazioni dell'app in modo che non vengano controllate nel repository di controllo del codice sorgente. In questo modo viene garantita la protezione delle informazioni riservate.

C# di esempio dell'associazione di output SendGrid

#r "SendGrid"
using System;
using SendGrid.Helpers.Mail;

public static Mail Run(TraceWriter log, string input, out Mail message)
{
     message = new Mail
    {        
        Subject = "Azure news"          
    };

    var personalization = new Personalization();
    personalization.AddTo(new Email("recipient@contoso.com"));   

    Content content = new Content
    {
        Type = "text/plain",
        Value = input
    };
    message.AddContent(content);
    message.AddPersonalization(personalization);
}

Nodo di esempio dell'associazione di output SendGrid

module.exports = function (context, input) {    
    var message = {
         "personalizations": [ { "to": [ { "email": "sample@sample.com" } ] } ],
        from: { email: "sender@contoso.com" },        
        subject: "Azure news",
        content: [{
            type: 'text/plain',
            value: input
        }]
    };

    context.done(null, message);
};

Passaggi successivi

Per informazioni sulle altre associazioni e i trigger per Funzioni di Azure, vedere