Я пытаюсь подключиться к ICloud через SmtpClientMailkit SMTP - StartTLS & TLS флаги
Настройки я использую следующие:
имяСервер: smtp.mail.me.com
SSL Требуется : Да
Если вы видите сообщение об ошибке при использовании SSL, попробуйте вместо этого использовать TLS или STARTTLS.
Порт: 587
SMTP Authentication Required: Да - с соответствующим именем пользователя и паролем
Если я использую SSL я получаю «Рукопожатие не удалось из-за неожиданный формат пакет»
Если я не использую SSL визуальной отладчик студии висит на подключении.
Я думаю, проблема в том, что я не говорю SmtpClient использовать tls, но я не могу найти документацию о том, как это сделать.
Код выглядит следующим образом:
using (var client = new SmtpClient()) {
client.Timeout = 1000 * 20;
//client.Capabilities.
client.AuthenticationMechanisms.Remove ("XOAUTH2");
client.Connect("SMTP.mail.me.com", 587, false); //dies here
//client.Connect(servername, port, useSsl);
//can I set tls or starttls here??
client.Authenticate(username, password);
client.Send(FormatOptions.Default, message);
}
Могу ли я в состоянии установить TLS или StartTLS вручную. Одна вещь, которую я постарался, - это следующее, но, похоже, не работает
client.Connect(new Uri("smtp://" + servername + ":" + port + "/?starttls=true"));
Спасибо за любую помощь.
Почему вы передаете 'false' для флага' useSSL', если вы говорите, что вам нужен 'SSL'? – Rob
@Rob Я пробовал использовать true, и я получил сообщение об ошибке из-за неожиданного формата пакета. iCloud предлагает следующее: «Если вы видите сообщение об ошибке при использовании SSL, попробуйте вместо этого использовать TLS или STARTTLS». – cavej03