Подскажите кто знает. Уже несколько дней мучаюсь с попыткой подключиться к серверу pop.mail.ru по 110 порту. При отправке USER получаю ошибку от сервера:
-ERR POP3 is available only with SSL or TLS connection enabled
В интернете все примеры не рассчитаны на то, что будет использоваться шифрование SSL или TLS, как подключиться с этим шифрованием? Может статьи какие нибудь есть? Спасибо за ответ.
Код:
mailclient = new TcpClient("pop.mail.ru", 110);
NetworkStream ns = mailclient.GetStream();
StreamReader sr = new StreamReader(ns);
StreamWriter sw = new StreamWriter(ns);
sw.WriteLine("USER " + "***@mail.ru");
sw.Flush();
Нужно использовать SslStream
вместе с TcpClient
, а затем использовать SslStream
для чтения данных, а не TcpClient
.
Что-то вроде:
TcpClient mail = new TcpClient();
SslStream sslStream;
int bytes = -1;
mail.Connect("pop.mail.ru", 995);
sslStream = new SslStream(mail.GetStream());
sslStream.AuthenticateAsClient("pop.mail.ru");
byte[] buffer = new byte[2048];
// Чтение потока, чтобы убедиться, что мы подключены
bytes = sslStream.Read(buffer, 0, buffer.Length);
Console.WriteLine(Encoding.ASCII.GetString(buffer, 0, bytes));
//Отправить имя пользователя для входа в систему
sslStream.Write(Encoding.ASCII.GetBytes("USER USER_EMAIL\r\n"));
bytes = sslStream.Read(buffer, 0, buffer.Length);
Console.WriteLine(Encoding.ASCII.GetString(buffer, 0, bytes));
//Отправить пароль для входа в систему
sslStream.Write(Encoding.ASCII.GetBytes("PASS USER_PASSWORD\r\n"));
bytes = sslStream.Read(buffer, 0, buffer.Length);
Console.WriteLine(Encoding.ASCII.GetString(buffer, 0, bytes));
//Получить первое письмо
sslStream.Write(Encoding.ASCII.GetBytes("RETR 1\r\n"));
bytes = sslStream.Read(buffer, 0, buffer.Length);
Console.WriteLine(Encoding.ASCII.GetString(buffer, 0, bytes));
Взято отсюда
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
День добрый много уважаемыеЕсть проблема с вызовом активностей, а именно через Bottom menu при клике, на необходимый мне объект(item), должна стартовать...
Всем доброго времени суток, есть метод который читает данные из файла и заполняет ListВ списке всегда будет фиксированное число данных = 8