با استفاده از جاوا به سرور SMTP متصل شوید

SMTP یک پروتکل ایمیل است که معمولاً برای ارسال ایمیل از برنامه های مشتری به سرورهای ایمیل استفاده می شود. قبل از برقراری ارتباط با سرور SMTP، باید یک اتصال برقرار کنید. در این مقاله نحوه اتصال برنامه نویسی به سرور SMTP با استفاده از جاوا را خواهید آموخت. علاوه بر این، مقاله نحوه اتصال به سرورهای SMTP از طریق پروکسی های SOCKS یا HTTP را پوشش می دهد.

Java API برای اتصال به سرور SMTP

برای اتصال به سرور SMTP، از Aspose.Email for Java استفاده می کنیم. این یک API قدرتمند است که به شما امکان می‌دهد با استفاده از جاوا برنامه‌های سرویس گیرنده ایمیل با ویژگی‌های غنی ایجاد کنید. علاوه بر این، راه های ساده ای را برای اتصال به سرورهای 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 متصل شوید

مراحل زیر برای اتصال به سرور SMTP آمده است.

  • یک شی از کلاس SmtpClient ایجاد کنید و آن را با آدرس میزبان مقداردهی کنید.
  • نام کاربری، رمز عبور، پورت و گزینه های امنیتی را با استفاده از شی SmtpClient تنظیم کنید.
  • ایمیل را ارسال کنید.

نمونه کد زیر نحوه اتصال به سرور SMTP با استفاده از جاوا را نشان می دهد.

// یک شی از 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"));

برای اتصال به سرور SMTP از پروکسی استفاده کنید

در موارد مختلف، سرورهای SMTP با استفاده از پروکسی ایمن می شوند. بنابراین، شما باید از طریق سرور پروکسی به سرور SMTP متصل شوید. برای چنین مواردی، Aspose.Email برای جاوا روش های زیر را ارائه می دهد.

از طریق SOCKS Proxy در جاوا به سرورهای SMTP متصل شوید

Aspose.Email برای جاوا از نسخه های 4، 4a و 5 پروتکل پروکسی SOCKS پشتیبانی می کند. مراحل زیر برای اتصال به سرور SMTP از طریق پروکسی SOCKS آمده است.

  • یک شی از کلاس SmtpClient ایجاد کنید و آن را با میزبان، نام کاربری و رمز عبور مقداردهی کنید.
  • یک شی از کلاس SocksProxy ایجاد کنید و آدرس، پورت و نسخه SOCKS سرور را تنظیم کنید.
  • پروکسی را با استفاده از روش SmtpClient.setProxy(SocksProxy) تنظیم کنید.
  • ارسال ایمیل.

نمونه کد زیر نحوه اتصال به سرور SMTP از طریق پروکسی SOCKS را نشان می دهد.

// یک شی از 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)"));

از طریق پروکسی HTTP در جاوا به سرورهای SMTP متصل شوید

مراحل زیر برای اتصال به سرور 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 برای جاوا بدون محدودیت ارزیابی، می توانید یک مجوز موقت رایگان دریافت کنید.

نتیجه

در این مقاله نحوه اتصال برنامه نویسی به سرور SMTP با استفاده از جاوا را یاد گرفتید. علاوه بر این، نحوه استفاده از پروکسی های SOCKS و HTTP برای اتصال به سرور SMTP را مشاهده کرده اید. می‌توانید با استفاده از مستندات درباره Aspose.Email برای جاوا بیشتر کاوش کنید. علاوه بر این، شما می توانید سوالات خود را از طریق [فروم 13 ما ارسال کنید.

همچنین ببینید