Connettiti ai server SMTP usando C#

Simple Mail Transfer Protocol (SMTP) è il protocollo di posta elettronica più comunemente utilizzato che si occupa dell’invio di messaggi di posta elettronica dalle applicazioni client al server di posta elettronica. In vari casi, i client di posta elettronica vengono implementati all’interno di applicazioni .NET per inviare e-mail tramite SMTP. Per tali scenari, questo articolo illustra come connettersi a un server SMTP a livello di codice utilizzando C#. Inoltre, gli esempi di codice mostrano come inviare un’e-mail tramite client SMTP dopo aver stabilito la connessione.

API C# per connettere il server SMTP

Aspose.Email for .NET è un’API C# progettata per creare potenti applicazioni client di posta elettronica. L’API consente di eseguire operazioni di posta elettronica complesse abbastanza facilmente in poche righe di codice. Inoltre, consente di connettere server SMTP tramite SOCKS e server proxy HTTP. Puoi scaricare la DLL dell’API o installarla utilizzando NuGet.

PM> Install-Package Aspose.Email

Connettiti al server SMTP usando C#

Prima di connetterti a un server SMTP, devi conoscere le seguenti cose.

  • Nome utente
  • Parola d’ordine
  • Porta

Una volta che li hai, puoi configurare il client SMTP usando i seguenti passaggi.

Nell’esempio di codice seguente viene illustrato come configurare l’API per una connessione SMTP in C#.

// Per esempi completi e file di dati, visitare https://github.com/aspose-email/Aspose.Email-for-.NET
SmtpClient client = new SmtpClient("smtp.gmail.com");

// Imposta nome utente, password, porta e opzioni di sicurezza
client.Username = "your.email@gmail.com";
client.Password = "your.password";
client.Port = 587;
client.SecurityOptions = SecurityOptions.SSLExplicit;

Dopo aver configurato l’API, puoi connetterti a un server SMTP utilizzando una delle seguenti opzioni.

Connetti a SMTP tramite il server proxy SOCKS in C#

Aspose.Email fornisce supporto per le versioni 4, 4a e 5 del protocollo proxy SOCKS. Di seguito sono riportati i passaggi per connettersi a un server SMTP tramite un server proxy SOCKS utilizzando Aspose.Email per .NET.

  • Inizializza SmtpClient con l’indirizzo host, nome utente, password e altre impostazioni.
  • Crea un oggetto della classe SocksProxy e imposta l’indirizzo e la porta.
  • Impostare il proxy del client utilizzando la proprietà SmtpClient.Proxy.
  • Invia e-mail utilizzando il metodo SmtpClient.Send().

L’esempio di codice seguente mostra come connettersi a un server SMTP tramite proxy SOCKS usando C#.

// Per esempi completi e file di dati, visitare https://github.com/aspose-email/Aspose.Email-for-.NET
SmtpClient client = new SmtpClient("smtp.domain.com", "username", "password");
client.SecurityOptions = SecurityOptions.SSLImplicit;
string proxyAddress = "192.168.203.142"; // proxy address
int proxyPort = 1080; // proxy port
SocksProxy proxy = new SocksProxy(proxyAddress, proxyPort, SocksVersion.SocksV5);
client.Proxy = proxy;
client.Send(new MailMessage("sender@domain.com", "receiver@domain.com", "Sending Email via proxy", "Implement socks proxy protocol for versions 4, 4a, 5 (only Username/Password authentication)"));

Connettiti al server SMTP tramite il server proxy HTTP

Di seguito sono riportati i passaggi per connettersi a un server SMTP tramite un server proxy HTTP.

L’esempio di codice seguente mostra come connettersi a un server SMTP tramite un server proxy HTTP.

// Per esempi completi e file di dati, visitare https://github.com/aspose-email/Aspose.Email-for-.NET
HttpProxy proxy = new HttpProxy("18.222.124.59", 8080);
using (SmtpClient client = new SmtpClient("host", 587, "username", "password"))
{
    client.Proxy = proxy;
    client.Send(new MailMessage(
        "from@domain.com",
        "to@domain.com",
        "NETWORKNET-34226 - " + Guid.NewGuid().ToString(),
        "NETWORKNET-34226 Implement socks proxy protocol for versions 4, 4a, 5 (only Username/Password authentication)"));
}

Ottieni una licenza API gratuita

Puoi provare a utilizzare Aspose.Email per .NET gratuitamente ottenendo una licenza temporanea.

Conclusione

In questo articolo hai imparato come connetterti a un server SMTP usando C#. Inoltre, la guida dettagliata e gli esempi di codice hanno mostrato come connettersi al server SMTP tramite SOCKS e server proxy HTTP. Puoi esplorare di più sull’API di posta elettronica C# utilizzando documentazione.

Guarda anche