Я борюсь с попыткой отправить электронную почту из приложения .NET.ASP.NET C# - Отправка электронной почты с сервера Gmail/Yahoo Live SMTP не работает
Я пробовал все, начиная с создания новой учетной записи как gmail, так и yahoo (изменил хост для yahoo), а также, изменив порт, используя и не используя mail.To, позволяя менее безопасным приложениям, я также попытался включить 2 а также предоставить пароль приложения для gmail, все из которых потерпели неудачу с той же пойманной ошибкой: {«Для SMTP-сервера требуется защищенное соединение или клиент не был аутентифицирован. Ответ сервера: 5.7.1 Требуется аутентификация»}
Это мой код:
SmtpClient smtpClient = new SmtpClient();
System.Net.NetworkCredential credentials = new System.Net.NetworkCredential("[email protected]", "pw");
smtpClient.Credentials = credentials;
smtpClient.UseDefaultCredentials = false;
smtpClient.Port = 587;
smtpClient.EnableSsl = true;
smtpClient.Host = "smtp.gmail.com";
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
MailMessage mail = new MailMessage();
mail.From = new MailAddress("[email protected]");
mail.To.Add("[email protected]");
mail.IsBodyHtml = true;
mail.Subject = txtSubject.Text;
mail.Body = txtBody.Text;
try
{
smtpClient.Send(mail);
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (mail != null)
{
mail.Dispose();
}
}
Решение: так как люди могут иметь проблемы в го В будущем решение заключалось в удалении строки кода: smtpClient.UseDefaultCredentials = false;
Никогда не делайте 'throw ex'' на исключенном исключении. Просто используйте 'throw;', поэтому вы сохраняете свой стек. – mason
Должен ли я изменить Exception ex на просто исключение, а? –
Hi .. tra this ... Opel браузер и Gmail на сервере, где вы его выполняете. Qnd тогда вы должны установить параметр защиты хром, чтобы он мог быть доступен, а пользователь из внешнего –