Condividi tramite


Libreria client di Comunicazione di Azure Email per JavaScript - versione 1.0.0

Questo pacchetto contiene un SDK JavaScript/TypeScript per Servizi di comunicazione di Azure per Email.

Introduzione

Prerequisiti

È necessaria una sottoscrizione di Azure, una risorsa del serviziodi comunicazione e una risorsa di comunicazione Email con un dominio attivo.

Per creare queste risorse, è possibile usare il portale di Azure, il Azure PowerShell o la libreria client di gestione .NET.

Installazione

npm install @azure/communication-email

Esempio

EmailClient fornisce la funzionalità per inviare messaggi di posta elettronica.

Authentication

Email client possono essere autenticati usando la stringa di connessione acquisita da una risorsa di comunicazione di Azure nel portale di Azure.

const { EmailClient } = require("@azure/communication-email");

const connectionString = `endpoint=https://<resource-name>.communication.azure.com/;accessKey=<Base64-Encoded-Key>`;
const client = new EmailClient(connectionString);

È anche possibile eseguire l'autenticazione con Azure Active Directory usando la libreria di identità di Azure. Per usare il provider DefaultAzureCredential illustrato di seguito o altri provider di credenziali forniti con Azure SDK, installare il @azure/identity pacchetto:

npm install @azure/identity

Il @azure/identity pacchetto offre un'ampia gamma di tipi di credenziali che l'applicazione può usare per eseguire questa operazione. ReadME per @azure/identity fornisce altri dettagli e esempi per iniziare. AZURE_CLIENT_SECRET, AZURE_CLIENT_ID e AZURE_TENANT_ID variabili di ambiente sono necessarie per creare un oggetto DefaultAzureCredential.

import { DefaultAzureCredential } from "@azure/identity";
import { EmailClient } from "@azure/communication-email";

const endpoint = "https://<resource-name>.communication.azure.com";
let credential = new DefaultAzureCredential();
const client = new EmailClient(endpoint, credential);

Inviare un messaggio di Email

Per inviare un messaggio di posta elettronica, chiamare la beginSend funzione da EmailClient. Verrà restituito un poller. È possibile usare questo poller per controllare lo stato dell'operazione e recuperare il risultato al termine dell'operazione.

const message = {
  senderAddress: "sender@contoso.com",
  content: {
    subject: "This is the subject",
    plainText: "This is the body",
  },
  recipients: {
    to: [
      {
        address: "customer@domain.com",
        displayName: "Customer Name",
      },
    ],
  },
};

const poller = await emailClient.beginSend(message);
const response = await poller.pollUntilDone();

Inviare un messaggio di Email a più destinatari

Per inviare un messaggio di posta elettronica a più destinatari, aggiungere un oggetto per ogni tipo di destinatario e un oggetto per ogni destinatario.

const message = {
  senderAddress: "sender@contoso.com",
  content: {
    subject: "This is the subject",
    plainText: "This is the body",
  },
  recipients: {
    to: [
      {
        address: "customer1@domain.com",
        displayName: "Customer Name 1",
      },
      {
        address: "customer2@domain.com",
        displayName: "Customer Name 2",
      },
    ],
    cc: [
      {
        address: "ccCustomer1@domain.com",
        displayName: " CC Customer 1",
      },
      {
        address: "ccCustomer2@domain.com",
        displayName: "CC Customer 2",
      },
    ],
    bcc: [
      {
        address: "bccCustomer1@domain.com",
        displayName: " BCC Customer 1",
      },
      {
        address: "bccCustomer2@domain.com",
        displayName: "BCC Customer 2",
      },
    ],
  },
};

const poller = await emailClient.beginSend(message);
const response = await poller.pollUntilDone();

Inviare Email con allegati

Servizi di comunicazione di Azure supporta l'invio di messaggi di posta elettronica con allegati.

const filePath = "C://readme.txt";

const message = {
  senderAddress: "sender@contoso.com",
  content: {
    subject: "This is the subject",
    plainText: "This is the body",
  },
  recipients: {
    to: [
      {
        address: "customer@domain.com",
        displayName: "Customer Name",
      },
    ],
  },
  attachments: [
    {
      name: path.basename(filePath),
      contentType: "text/plain",
      contentInBase64: readFileSync(filePath, "base64"),
    },
  ],
};

const poller = await emailClient.beginSend(message);
const response = await poller.pollUntilDone();

Passaggi successivi

Contributo

In questo progetto sono benvenuti i contributi e i suggerimenti. Per la maggior parte dei contenuti è necessario sottoscrivere un contratto di licenza di collaborazione (CLA, Contributor License Agreement) che stabilisce che l'utente ha il diritto di concedere, e di fatto concede a Microsoft i diritti d'uso del suo contributo. Per informazioni dettagliate, visitare cla.microsoft.com.

Questo progetto ha adottato il Codice di comportamento di Microsoft per l'open source. Per altre informazioni, vedere Code of Conduct FAQ (Domande frequenti sul Codice di comportamento Open Source di Microsoft) oppure contattare opencode@microsoft.com per eventuali altre domande o commenti.