התחבר לשרת SMTP באמצעות Java

ה-SMTP הוא פרוטוקול דוא"ל נפוץ לשליחת אימיילים מיישומי הלקוח לשרתי הדוא"ל. לפני תקשורת עם שרת SMTP, עליך ליצור חיבור. במאמר זה תלמד כיצד להתחבר לשרת SMTP באופן תכנותי באמצעות Java. יתר על כן, המאמר יעסוק כיצד להתחבר לשרתי SMTP באמצעות SOCKS או פרוקסי HTTP.

Java API לחיבור לשרת SMTP

על מנת להתחבר לשרת SMTP, נשתמש ב-Aspose.Email for Java. זהו API רב עוצמה המאפשר לך ליצור יישומי לקוח דוא"ל עשירים בתכונות באמצעות Java. יתר על כן, הוא מספק דרכים פשוטות להתחבר לשרתי SMTP. אתה יכול להוריד את ה-JAR של ה-API או להתקין אותו באמצעות התצורות הבאות של Maven.

<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>

התחבר לשרת SMTP באמצעות Java

להלן השלבים לחיבור לשרת SMTP.

  • צור אובייקט במחלקה SmtpClient ואתחול אותו עם הכתובת של המארח.
  • הגדר שם משתמש, סיסמה, יציאה ואפשרויות אבטחה באמצעות האובייקט SmtpClient.
  • שלח את המייל.

דוגמת הקוד הבאה מראה כיצד להתחבר לשרת SMTP באמצעות Java.

// צור אובייקט של SmtpClient
SmtpClient client = new SmtpClient("smtp.gmail.com");

// הגדר שם משתמש, סיסמה, יציאה ואפשרויות אבטחה
client.setUsername("your.email@gmail.com");
client.setPassword("your.password");
client.setPort(587);
client.setSecurityOptions(SecurityOptions.SSLExplicit);

// לשלוח מיילים
client.send(new MailMessage("sender@domain.com", "receiver@domain.com", "Sending Email via proxy", "Test email"));

השתמש ב-Proxy כדי להתחבר לשרת SMTP

במקרים שונים, שרתי ה-SMTP מאובטחים באמצעות פרוקסי. לכן, עליך להתחבר לשרת ה-SMTP דרך שרת ה-proxy. עבור מקרים כאלה, Aspose.Email עבור Java מספקת את השיטות הבאות.

התחבר לשרתי SMTP דרך SOCKS Proxy ב-Java

Aspose.Email עבור Java מספקת תמיכה עבור גרסאות 4, 4a ו-5 של פרוטוקול SOCKS proxy. להלן השלבים להתחבר לשרת SMTP באמצעות SOCKS proxy.

  • צור אובייקט במחלקה SmtpClient ואתחול אותו עם המארח, שם המשתמש והסיסמה.
  • צור אובייקט במחלקה SocksProxy והגדר את כתובת השרת, היציאה וגרסת SOCKS.
  • הגדר פרוקסי באמצעות שיטת SmtpClient.setProxy(SocksProxy).
  • לשלוח מיילים.

דוגמת הקוד הבאה מראה כיצד להתחבר לשרת SMTP באמצעות SOCKS proxy.

// צור אובייקט של SmtpClient
SmtpClient client = new SmtpClient("smtp.domain.com", "username", "password");

// הגדר אפשרויות אבטחה
client.setSecurityOptions(SecurityOptions.SSLImplicit);

// הגדרות פרוקסי
String proxyAddress = "192.168.203.142"; // proxy address
int proxyPort = 1080; // proxy port

// צור והגדר פרוקסי
SocksProxy proxy = new SocksProxy(proxyAddress, proxyPort, SocksVersion.SocksV5);
client.setProxy(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)"));

התחבר לשרתי SMTP באמצעות פרוקסי HTTP ב-Java

להלן השלבים להתחבר לשרת SMTP באמצעות פרוקסי HTTP.

  • צור אובייקט מהמחלקה HttpProxy ואתחול אותו עם המארח ומספר היציאה.
  • צור אובייקט במחלקה SmtpClient והגדר מארח, שם משתמש, סיסמה ויציאה.
  • הגדר פרוקסי באמצעות שיטת SmtpClient.setProxy(HttpProxy).
  • לשלוח מיילים.

דוגמת הקוד הבאה מראה כיצד להתחבר לשרת SMTP באמצעות פרוקסי HTTP.

// צור אובייקט של HttpProxy
HttpProxy proxy = new HttpProxy("18.222.124.59", 8080);

// צור לקוח SMTP
try (SmtpClient client = new SmtpClient("host", 587, "username", "password")) {
  
    // הגדר פרוקסי
    client.setProxy(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)"));
}

קבל רישיון API בחינם

אתה יכול לקבל רישיון זמני בחינם על מנת להשתמש ב-Aspose.Email עבור Java ללא מגבלות הערכה.

סיכום

במאמר זה, למדת כיצד להתחבר לשרת SMTP באופן תכנותי באמצעות Java. בנוסף, ראית כיצד להשתמש בפרוקסי SOCKS ו-HTTP כדי להתחבר לשרת SMTP. אתה יכול לחקור יותר על Aspose.Email עבור Java באמצעות תיעוד. יתר על כן, אתה יכול לשלוח את השאילתות שלך דרך הפורום שלנו.

ראה גם