الاتصال بخادم POP3
الـ Pop3Client الفئة تسمح للتطبيقات بإدارة صناديق البريد باستخدام بروتوكول مكتب البريد، الإصدار 3 (POP3). للاتصال بخادم، استخدم الـ Pop3Client الفئة. الـ Pop3Client الفئة هي المدخل الرئيسي للمطورين الذين يرغبون في إضافة إدارة POP3 إلى تطبيقاتهم في .NET. توضح هذه المقالة كيفية استخدامها. للاتصال بخادم POP3:
- إنشاء مثيل من الـ Pop3Client فئة.
- حدد المضيف، اسم المستخدم، وكلمة المرور في الـ Pop3Client كائن.
يوضح المقتطف التالي كيفية الاتصال بخادم POP3.
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// Create an instance of the Pop3Client class
Pop3Client client = new Pop3Client();
// Specify host, username, password, Port and SecurityOptions for your client
client.setHost("pop.gmail.com");
client.setUsername("your.username@gmail.com");
client.setPassword("your.password");
client.setPort(995);
client.setSecurityOptions(SecurityOptions.Auto);
System.out.println("Connected to POP3 server.");
الاتصال بخادم SSL
الاتصال بخادم POP3 وصف كيفية الاتصال بخادم POP3 في ثلاث خطوات بسيطة:
- إنشاء مثيل من الـ Pop3Client فئة.
- حدد المضيف، اسم المستخدم، وكلمة المرور.
عملية الاتصال بخادم POP3 مع تمكين SSL مشابهة ولكن تتطلب تعيين بعض الخصائص الإضافية:
- خيارات الأمان
- المنفذ
لاتصال بخادم POP3 مع تمكين SSL، استخدم الـ Pop3Client فئة وتعيين الـ خيارات الأمان وعناصر الخصائص للمنفذ. يوضح المقتطف التالي كيفية الاتصال بخادم POP3 مع تمكين SSL.
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// Create an instance of the Pop3Client class
Pop3Client client = new Pop3Client();
// Specify host, username and password, Port and SecurityOptions for your client
client.setHost("pop.gmail.com");
client.setUsername("your.username@gmail.com");
client.setPassword("your.password");
client.setPort(995);
client.setSecurityOptions(SecurityOptions.Auto);
System.out.println("Connecting to POP3 server using SSL.");
الاتصال بخادم APOP
POP تعني بروتوكول مكتب البريد. APOP تعني بروتوكول مكتب البريد المُوثق. APOP هو نسخة موسّعة من إعداد خادم POP3 تُشفّر اسم المستخدم وكلمة المرور وتستخدم آلية مصادقة صُممت لحماية كلمة مرور حساب POP3 عند فحص البريد. لا تتطلب مصادقة APOP إرسال كلمة مرور الحساب كنص عادي إلى خادم البريد POP3.
الاتصال بالخادم عبر وكيل
خوادم الوكيل شائعة جدًا للتواصل مع العالم الخارجي. في هذه الحالات، تُستخدم عناوين الوكيل لتمكين عملاء البريد من الوصول إلى صناديق البريد عبر الإنترنت. يوفر Aspose.Email دعمًا لإصدارات 4، 4a و5 من بروتوكول وكيل SOCKS. تقدم هذه المقالة مثالًا عمليًا لاسترجاع البريد باستخدام خادم وكيل بريد. لاسترجاع البريد عبر خادم وكيل:
- تهيئة وكيل مع المعلومات المطلوبة، أي عنوان الوكيل، المنفذ، وإصدار SOCKS.
- تهيئة Pop3Client مع عنوان المضيف، اسم المستخدم، كلمة المرور، وأي إعدادات أخرى.
- عيّن خاصية Proxy للعميل إلى وكيل الكائن الذي تم إنشاؤه أعلاه.
يوضح المقتطف التالي كيفية استرجاع الرسائل عبر خادم وكيل.
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// Create an instance of the Pop3Client class
Pop3Client client = new Pop3Client("pop.domain.com", "username", "password");
// Set proxy address, Port and Proxy
String proxyAddress = "192.168.203.142";
int proxyPort = 1080;
SocksProxy proxy = new SocksProxy(proxyAddress, proxyPort, SocksVersion.SocksV5);
client.setProxy(proxy);
Pop3MailboxInfo mailboxInfo = client.getMailboxInfo();
الاتصال بخادم عبر وكيل HTTP
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
HttpProxy proxy = new HttpProxy("18.222.124.59", 8080);
try (Pop3Client client = new Pop3Client("imap.domain.com", "username", "password")) {
client.setProxy(proxy);
Pop3MailboxInfo mailboxInfo = client.getMailboxInfo();
}
تخصيص آلية المصادقة
استرجاع قائمة آليات المصادقة التي يدعمها خادم POP3 باستخدام الـ getSupportedAuthentication طريقة الـ Pop3Client فئة. تسمح هذه الطريقة للعميل بتحديد طرق المصادقة المتاحة لإنشاء اتصال آمن مع الخادم. ثم، باستخدام الـ setAllowedAuthentication طريقة تحصل (أو تعيين) تعداد أنواع المصادقة المسموح بها من قبل المستخدم، اختر آلية المصادقة الأنسب لتواصل العميل-الخادم. يتيح لك ذلك تعيين طريقة المصادقة لعميل البريد صراحة.
يوضح عينة الكود التالية كيفية تخصيص مصادقة عميل البريد الإلكتروني:
pop3Client.setAllowedAuthentication(Pop3KnownAuthenticationType.Plain);
دعم بروتوكول OAuth 2.0 للتفويض
OAuth 2.0 يوفر التفويض
يدعم Pop3Client بروتوكول OAuth 2.0 موفرًا طرق تفويض محددة للتطبيقات. تُستخدم البنيات التالية لتهيئة POP3Client باستخدام OAuth:
public Pop3Client(
String host, /*The host name*/
int port, /*The port number*/
String username, /*The user name*/
ITokenProvider tokenProvider, /*TokenProvider allowing to retrieve access token*/
/*SecurityOptions*/int securityOptions) /*Security mode for a mail client*/
public Pop3Client(
String host, /*The host name*/
int port, /*The port number*/
String username, /*The user name*/
String authInfo, /*The user password or XOAUTH2 access token*/
boolean useOAuth, /*Defines whether SASL XOAUTH2 mechanism is used to login to the server*/
/*SecurityOptions*/int securityOptions) /*Security mode for a mail client*/
التحقق من اعتماد الخادم البريدي دون إرسال بريد إلكتروني
أحيانًا يكون من الضروري التحقق من الاعتماديات دون إرسال بريد إلكتروني. يوفر Aspose.Email الـ validateCredentials() طريقة لتنفيذ هذه العملية. إذا كانت عملية التحقق ناجحة، يتم تنفيذ الشيفرة داخل عبارة if، عادةً لاستخدامها في إجراءات أخرى أو استرجاع البيانات من خادم IMAP. يوضح المقتطف البرمجي التالي التحقق من الاعتماديات دون إرسال بريد إلكتروني:
try (Pop3Client pop3Client = new Pop3Client(
server.Pop3Url, server.Pop3Port, "userName", "password", SecurityOptions.Auto)) {
pop3Client.setTimeout(4000);
if (pop3Client.validateCredentials()) {
// to do something
}
}
استخدام المصادقة CRAM-MD5 للاتصال بخادم
لضمان المصادقة الآمنة والتواصل مع خادم POP3، يمكنك تحديد وفرض استخدام CRAM-MD5 كطريقة مصادقة مسموح بها لعميل POP3. يوضح المقتطف التالي كيفية تكوين نوع المصادقة المسموح به للـ Pop3Client:
popClient.setAllowedAuthentication(Pop3KnownAuthenticationType.CramMD5);
كيفية ضبط مهلة لعمليات البريد
كل عملية بريد تستغرق بعض الوقت اعتمادًا على عوامل عديدة (تأخيرات الشبكة، حجم البيانات، أداء الخادم، إلخ). يمكنك ضبط مهلة لجميع عمليات البريد. يُظهر مثال الشيفرة أدناه كيفية القيام بذلك باستخدام الـ مهلة الخاصية. ملاحظة: لا ينبغي ضبط قيم كبيرة لتجنب الانتظار الطويل في تطبيقك.
try (Pop3Client pop3Client = new Pop3Client("host", 995, "username", "password", SecurityOptions.Auto))
{
pop3Client.setTimeout(60000); // 60 seconds
// some code...
}