اتصال به سرور POP3

اتصال به سرور POP3

این Pop3Client کلاس به برنامه‌ها اجازه می‌دهد صندوق‌های ایمیل را با استفاده از پروتکل پست اداری، نسخهٔ 3 (POP3) مدیریت کنند. این کلاس ورودی اصلی برای توسعه‌دهندگانی است که می‌خواهند مدیریت POP3 را به برنامه‌های .NET خود اضافه کنند.

برای اتصال به سرور POP3:

  1. یک نمونه از Pop3Client کلاس.
  2. آدرس میزبان، نام کاربری و رمز عبور را در Pop3Client نمونه.

قطعه کد زیر نشان می‌دهد چگونه به سرور POP3 متصل شوید.

اتصال به سرور SSL

فرآیند اتصال به سرور POP3 با پشتیبانی SSL مشابه است اما نیاز دارد چند ویژگی دیگر تنظیم شوند:

برای اتصال به سرور POP3 فعال‌سازی SSL، مقدار SecurityOptions و ویژگی‌های پورت. بخش کد زیر نشان می‌دهد چگونه به سرور POP3 فعال‌سازی SSL متصل شوید.

اتصال به سرور APOP

POP مخفف Post Office Protocol است. APOP مخفف Authenticated Post Office Protocol می‌باشد. APOP نسخهٔ توسعه‌یافته‌ای از تنظیمات سرور POP3 است که نام کاربری و رمز عبور شما را رمزگذاری می‌کند و از مکانیزم احراز هویتی استفاده می‌کند که برای محافظت از رمز عبور حساب POP3 شما هنگام بررسی ایمیل طراحی شده است. احراز هویت APOP نیازی به ارسال رمز عبور حساب به صورت متن ساده به سرور ایمیل POP3 ندارد.

اتصال به سرور از طریق پراکسی

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

برای دریافت ایمیل از طریق سرور پراکسی:

  1. راه‌اندازی پروکسی با اطلاعات لازم، یعنی آدرس پروکسی، پورت و نسخه SOCKS.
  2. راه‌اندازی Pop3Client با آدرس میزبان، نام کاربری، رمز عبور و هر تنظیم دیگر.
  3. ویژگی Proxy یک کلاینت را به پروکسی شیء‌ای که در بالا ایجاد شده است.

بخش کد زیر نشان می‌دهد چگونه ایمیل را از طریق سرور پراکسی دریافت کنید.

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

اتصال با احراز هویت CRAM-MD5

با استفاده از احراز هویت CRAM-MD5، Aspose.Email برای .NET به کاربران امکان احراز هویت ایمن و دسترسی به سرورهای ایمیل که این روش را پشتیبانی می‌کنند را می‌دهد. نمونه کد زیر نشان می‌دهد چگونه این مکانیزم را در پروژهٔ خود به کار ببرید:

popClient.AllowedAuthentication = Pop3KnownAuthenticationType.CramMD5;

فهرست افزونه‌های سرور

Pop3Client به شما اجازه می‌دهد افزونه‌های سروری که پشتیبانی می‌کند مانند IDLE، UNSELECT، QUOTA و غیره را دریافت کنید. این به شناسایی در دسترس بودن یک افزونه قبل از استفاده از کلاینت برای آن عملکرد خاص کمک می‌کند. GetCapabilities() متد انواع افزونه‌های پشتیبانی‌شده را به‌صورت آرایه‌ای از رشته‌ها برمی‌گرداند.

دریافت افزونه‌های سرور

نمونه کد زیر نحوه دریافت افزونه‌های سرور را با استفاده از POP3Client برای سرور Gmail نشان می‌دهد.

تنظیم زمان‌سرب برای عملیات‌های ایمیل

هر عملیات ایمیل بسته به عوامل متعددی (تاخیرهای شبکه، حجم داده، عملکرد سرور و غیره) مدتی طول می‌کشد. می‌توانید زمان انتظار (Timeout) را برای تمام عملیات ایمیل تنظیم کنید. مثال کد زیر نشان می‌دهد چگونه با استفاده از زمان انتظار ویژگی. نکته: نباید مقادیر بزرگ تنظیم کنید تا از انتظار طولانی در برنامه جلوگیری کنید.

using (Pop3Client pop3Client = new Pop3Client("host", 995, "username", "password", SecurityOptions.Auto))
{
    pop3Client.Timeout = 60000; // 60 seconds

    // some code...
}

استفاده از پروتکل‌های کریپتوگرافی با کلاینت POP3

Aspose.Email پروتکل‌های رمزنگاری SSL (منقضی) و TLS را برای فراهم کردن امنیت ارتباطات پشتیبانی می‌کند. می‌توانید رمزنگاری را فعال کنید تا تبادل داده‌ها بین برنامهٔ شما و سرورهای ایمیل محافظت شود.

توجه: باید فقط نسخه‌های پروتکل را تنظیم کنید که توسط .NET Framework پشتیبانی می‌شوند. اگر برخی نسخه‌های پروتکل رمزنگاری توسط نسخهٔ فعلی .NET Framework شما پشتیبانی نشود، نادیده گرفته شده و رد می‌شوند. در این صورت استثناها تولید نمی‌شوند. لطفاً از SetSupportedEncryptionUnsafe متد اگر می‌خواهید پروتکل‌ها را بدون هیچ بررسی سازگاری تنظیم کنید.

مثال کد زیر نشان می‌دهد چگونه TLS 1.3 را برای Pop3Client نمونهٔ کلاس.

using (Pop3Client pop3Client = new Pop3Client("host", 995, "username", "password", SecurityOptions.Auto))
{
    pop3Client.SupportedEncryption = EncryptionProtocols.Tls13;

    // some code...
}

در صورتی که پروتکل رمزنگاری مشخص‌شده در نسخهٔ فعلی .NET Framework پشتیبانی نشود، تفاوت رفتار بین SetSupportedEncryptionUnsafe متد و SupportedEncryption ویژگی به شرح زیر است:

  • اگر SupportedEncryption اگر این ویژگی استفاده شود، کلاینت ایمیل پروتکل رمزنگاری را به سطحی پشتیبانی‌شده کاهش می‌دهد.

  • اگر SetSupportedEncryptionUnsafe اگر از این متد استفاده شود، کلاینت ایمیل استثناها را پرتاب می‌کند.