Свързване към POP3 сървър
Този Pop3Client класът позволява на приложенията да управляват пощенски кутии, използвайки Post Office Protocol, версия 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 клас.
- Задайте хоста, потребителското име и паролата.
Процесът за свързване със SSL‑поддържан POP3 сървър е подобен, но изисква да зададете още няколко свойства:
- SecurityOptions
- Порт
За да се свържете със SSL‑поддържан POP3 сървър, използвайте Pop3Client клас и задайте SecurityOptions и свойства Port. Следният кодов пример показва как да се свържете със SSL‑поддържан 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 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 означава Post Office Protocol. APOP означава Authenticated Post Office Protocol. 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...
}