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

پروتکل دسترسی به پیام های اینترنتی (IMAP) پروتکلی است که معمولاً برای بازیابی پیام ها از سرورهای ایمیل استفاده می شود. برای دسترسی به صندوق پستی از برنامه های مشتری خود، ابتدا باید با سرور IMAP ارتباط برقرار کنید. برای رسیدن به این هدف، این مقاله نشان می دهد که چگونه با استفاده از جاوا به یک سرور IMAP متصل شوید. علاوه بر این، نحوه استفاده از پروکسی SOCKS یا HTTP و اتصال به سرور IMAP دارای SSL را به صورت برنامه‌ریزی یاد خواهید گرفت.

Java API برای اتصال یک سرور IMAP

برای اتصال به سرورهای IMAP، از Aspose.Email for Java استفاده خواهیم کرد. این یک API قدرتمند است که به شما امکان می دهد کلاینت های ایمیل با ویژگی های غنی را از داخل برنامه های جاوا خود پیاده سازی کنید. می توانید 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.6</version>
    <classifier>jdk16</classifier>
</dependency>

به یک سرور IMAP در جاوا متصل شوید

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

  1. یک نمونه از کلاس ImapClient ایجاد کنید و میزبان، نام کاربری و رمز عبور را تنظیم کنید.
  2. از شی ImapClient برای دسترسی به صندوق پستی استفاده کنید، یعنی از روش ImapClient.selectFolder(“Inbox”) استفاده کنید.

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

// یک impapclient با میزبان، نام کاربری و رمز عبور ایجاد کنید
ImapClient client = new ImapClient("localhost", "user", "password");

// دسترسی به صندوق ورودی
try {
    client.selectFolder("Inbox");
} catch (java.lang.RuntimeException ex) {
    System.out.println(ex.getMessage());
}

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

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

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

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

  1. یک نمونه از کلاس ImapClient ایجاد کنید و میزبان، نام کاربری و رمز عبور را مشخص کنید.
  2. یک نمونه از کلاس SocksProxy ایجاد کنید و آدرس، پورت و نسخه پروکسی را مشخص کنید.
  3. پروکسی را با استفاده از روش ImapClient.setProxy(SocksProxy) تنظیم کنید.
  4. از شی ImapClient برای دسترسی به صندوق پستی استفاده کنید، یعنی از روش ImapClient.selectFolder(“Inbox”) استفاده کنید.

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

// به IMAP متصل شوید و وارد شوید و SecurityOptions را تنظیم کنید
ImapClient client = new ImapClient("imap.domain.com", "username", "password");
client.setSecurityOptions(SecurityOptions.Auto);

String proxyAddress = "192.168.203.142"; // proxy address
int proxyPort = 1080; // proxy port
SocksProxy proxy = new SocksProxy(proxyAddress, proxyPort, SocksVersion.SocksV5);

// پروکسی را تنظیم کنید
client.setProxy(proxy);

try {
    // دسترسی به صندوق ورودی
    client.selectFolder("Inbox");
} catch (java.lang.RuntimeException ex) {
    System.out.println(ex.getMessage());
}

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

مراحل زیر برای اتصال به سرور IMAP از طریق پروکسی HTTP در جاوا آمده است.

  1. یک نمونه از کلاس ImapClient ایجاد کنید و میزبان، نام کاربری و رمز عبور را مشخص کنید.
  2. یک نمونه از کلاس HttpProxy ایجاد کنید و آدرس و پورت را مشخص کنید.
  3. پروکسی را با استفاده از روش ImapClient.setProxy(HttpProxy) تنظیم کنید.
  4. از شی ImapClient برای دسترسی به صندوق پستی استفاده کنید، یعنی با استفاده از روش ImapClient.selectFolder(“Inbox”).

نمونه کد زیر نحوه دسترسی به سرورهای IMAP از طریق پروکسی HTTP در جاوا را نشان می دهد.

// یک نمونه از HttpProxy و هاست و پورت خاص ایجاد کنید
HttpProxy proxy = new HttpProxy("18.222.124.59", 8080);

// کلاینت IMAP ایجاد کنید
ImapClient client = new ImapClient("imap.domain.com", "username", "password");

// پروکسی را تنظیم کنید و به صندوق پستی دسترسی پیدا کنید
try {
    client.setProxy(proxy);
    client.selectFolder("Inbox");
} finally {
    if (client != null)
        client.dispose();
}

به سرورهای IMAP دارای SSL در جاوا متصل شوید

Aspose.Email برای جاوا همچنین امکان اتصال سرورهای IMAP دارای SSL را فراهم می کند. در آن صورت، باید گزینه امنیتی SecurityOptions.SSLImplicit را در ImapClient با استفاده از روش ImapClient.setSecurityOptions() تنظیم کنید.

نمونه کد زیر نحوه اتصال به سرور IMAP دارای SSL را نشان می دهد.

// یک نمونه از کلاس ImapClient ایجاد کنید
ImapClient client = new ImapClient("imap.domain.com", 993, "user@domain.com", "pwd");

// حالت امنیتی را روی حالت ضمنی تنظیم کنید
client.setSecurityOptions(SecurityOptions.SSLImplicit);

// دسترسی به صندوق ورودی
try {
    client.selectFolder("Inbox");
} catch (java.lang.RuntimeException ex) {
    System.out.println(ex.getMessage());
}

مجوز API رایگان دریافت کنید

می‌توانید با دریافت مجوز موقت از Aspose.Email برای جاوا به صورت رایگان استفاده کنید.

نتیجه

در این مقاله نحوه اتصال به سرور IMAP با استفاده از جاوا را یاد گرفتید. علاوه بر این، راهنمای گام به گام و نمونه کد نحوه اتصال به سرور IMAP از طریق SOCKS یا پروکسی HTTP را نشان داده است. می‌توانید با استفاده از مستندات درباره API بیشتر کاوش کنید. برای هر گونه سؤال یا سؤال، از طریق [فروم 18 ما به ما اطلاع دهید.

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