Stellen Sie mit Java eine Verbindung zum SMTP-Server her

SMTP ist ein häufig verwendetes Email-Protokoll zum Senden von Emails von den Client Anwendungen an die Email-Server. Bevor Sie mit einem SMTP-Server kommunizieren, müssen Sie eine Verbindung herstellen. In diesem Artikel erfahren Sie, wie Sie mit Java programmgesteuert eine Verbindung zu einem SMTP-Server herstellen. Darüber hinaus behandelt der Artikel, wie man sich über SOCKS oder HTTP-Proxys mit den SMTP-Servern verbindet.

Java API zum Verbinden mit dem SMTP-Server

Um eine Verbindung zu einem SMTP-Server herzustellen, verwenden wir Aspose.Email for Java. Es ist eine leistungsstarke API, mit der Sie funktionsreiche Email-Client Anwendungen mit Java erstellen können. Darüber hinaus bietet es vereinfachte Möglichkeiten, sich mit den SMTP-Servern zu verbinden. Sie können die JAR Datei der API entweder herunterladen oder mit den folgenden Maven konfigurationen installieren.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-email</artifactId>
    <version>21.3</version>
    <classifier>jdk16</classifier>
</dependency>

Stellen Sie mit Java eine Verbindung zu einem SMTP-Server her

Im Folgenden sind die Schritte zum Herstellen einer Verbindung zu einem SMTP-Server aufgeführt.

  • Erstellen Sie ein Objekt der Klasse SmtpClient und initialisieren Sie es mit der Adresse des Hosts.
  • Legen Sie Benutzername, Kennwort, Port und Sicherheitsoptionen mithilfe des SmtpClient objekts fest.
  • Senden Sie die Email.

Das folgende Codebeispiel zeigt, wie Sie mit Java eine Verbindung zu einem SMTP-Server herstellen.

// Erstellen Sie ein Objekt von SMTPClient
SmtpClient client = new SmtpClient("smtp.gmail.com");

// Legen Sie Benutzername, Passwort, Port und Sicherheitsoptionen fest
client.setUsername("your.email@gmail.com");
client.setPassword("your.password");
client.setPort(587);
client.setSecurityOptions(SecurityOptions.SSLExplicit);

// Emails senden
client.send(new MailMessage("sender@domain.com", "receiver@domain.com", "Sending Email via proxy", "Test email"));

Verwenden Sie Proxy, um sich mit einem SMTP-Server zu verbinden

In verschiedenen Fällen werden die SMTP-Server über den Proxy gesichert. Daher müssen Sie sich über den Proxy-Server mit dem SMTP-Server verbinden. Für solche Fälle bietet Aspose.Email for Java die folgenden Methoden.

Stellen Sie über SOCKS Proxy in Java eine Verbindung zu SMTP-Servern her

Aspose.Email for Java bietet Unterstützung für die Versionen 4, 4a und 5 des SOCKS-Proxy-Protokolls. Im Folgenden sind die Schritte zum Herstellen einer Verbindung zu einem SMTP-Server über einen SOCKS-Proxy aufgeführt.

  • Erstellen Sie ein Objekt der Klasse SmtpClient und initialisieren Sie es mit Host, Benutzername und Passwort.
  • Erstellen Sie ein Objekt der Klasse SocksProxy und legen Sie die Adresse, den Port und die SOCKS-Version des Servers fest.
  • Legen Sie den Proxy mithilfe der Methode SmtpClient.setProxy(SocksProxy) fest.
  • Emails senden.

Das folgende Codebeispiel zeigt, wie Sie über einen SOCKS-Proxy eine Verbindung zu einem SMTP-Server herstellen.

// Erstellen Sie ein Objekt von SMTPClient
SmtpClient client = new SmtpClient("smtp.domain.com", "username", "password");

// Sicherheitsoptionen festlegen
client.setSecurityOptions(SecurityOptions.SSLImplicit);

// Proxy-Einstellungen
String proxyAddress = "192.168.203.142"; // proxy address
int proxyPort = 1080; // proxy port

// Proxy erstellen und festlegen
SocksProxy proxy = new SocksProxy(proxyAddress, proxyPort, SocksVersion.SocksV5);
client.setProxy(proxy);

// Email senden
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)"));

Stellen Sie eine Verbindung zu einem SMTP-Server über HTTP-Proxy in Java her

Im Folgenden sind die Schritte zum Herstellen einer Verbindung zu einem SMTP-Server über einen HTTP-Proxy aufgeführt.

  • Erstellen Sie ein Objekt der Klasse HttpProxy und initialisieren Sie es mit der Host und Portnummer.
  • Erstellen Sie ein Objekt der Klasse SmtpClient und legen Sie Host, Benutzername, Passwort und Port fest.
  • Legen Sie den Proxy mithilfe der Methode SmtpClient.setProxy(HttpProxy) fest.
  • Emails senden.

Das folgende Codebeispiel zeigt, wie Sie über einen HTTP-Proxy eine Verbindung zu einem SMTP-Server herstellen.

// Erstellen Sie ein HttpProxy objekt
HttpProxy proxy = new HttpProxy("18.222.124.59", 8080);

// SMTP-Client erstellen
try (SmtpClient client = new SmtpClient("host", 587, "username", "password")) {
  
    // Proxy einstellen
    client.setProxy(proxy);
  
    // Emails senden
    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)"));
}

Holen Sie sich eine kostenlose API Lizenz

Sie können eine kostenlose temporäre Lizenz erhalten, um Aspose.Email for Java ohne Evaluierungseinschränkungen zu verwenden.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie mit Java programmgesteuert eine Verbindung zu einem SMTP-Server herstellen. Außerdem haben Sie gesehen, wie Sie SOCKS und HTTP-Proxys verwenden, um eine Verbindung zu einem SMTP-Server herzustellen. Weitere Informationen zu Aspose.Email for Java finden Sie unter Dokumentation. Darüber hinaus können Sie Ihre Fragen über unser Forum stellen.

Siehe auch