需要 Smtp 身份验证
Smtp authentification required
我有一个 asp.net mvc 应用程序,我想发送一封电子邮件 :
MailMessage mailMessage = new MailMessage();
var smtpClient = new SmtpClient();
{
smtpClient.Host = "smtp.gmail.com";
smtpClient.Port = 587;
smtpClient.EnableSsl = true;
smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
smtpClient.Credentials = new NetworkCredential("myemail@gmail.com", "password");
smtpClient.Timeout = 20000;
}
mailMessage.To.Add(model.Email);
mailMessage.From = new MailAddress("support@team.com");
mailMessage.Subject = "Modification de mot de passe";
mailMessage.Body = "Vous avez modifié votre mot de passe de votre Compte ";
mailMessage.Body += Environment.NewLine;
mailMessage.Body += "le nouveau mot de passe est : ";
mailMessage.Body += newPassword;
smtpClient.Send(mailMessage);
我得到这个异常:
La réponse du serveur était : 5.5.1 Authentication Required.
最后一行代码。
我想知道这个问题的原因是什么?我该如何解决?
您需要告诉 SMTP 客户端您将不会使用您的 windows 凭据访问 SMTP,因此添加
smtpClient.UseDefaultCredentials = false;
上面这行代码
smtpClient.Credentials = new NetworkCredential("myemail@gmail.com", "password");
此外,gmail 不允许模拟,因此
mailMessage.From = new MailAddress("support@team.com");
不会有任何影响 - 电子邮件仍将显示为从您正在访问的电子邮件帐户发送。
此外,请确保在您的 gmail 帐户上设置 "allow less-secure applications",并且未启用双因素身份验证。
您的帐户启用了 SSL 吗?
根据您的 Gmail 帐户设置,您可能会在应用程序中遇到身份验证错误。如果您的 Gmail 帐户使用两步验证,您应该生成一个应用程序密码以用于您的 mailer_password 参数。您还应确保允许安全性较低的应用程序访问您的 Gmail 帐户。
我有一个 asp.net mvc 应用程序,我想发送一封电子邮件 :
MailMessage mailMessage = new MailMessage();
var smtpClient = new SmtpClient();
{
smtpClient.Host = "smtp.gmail.com";
smtpClient.Port = 587;
smtpClient.EnableSsl = true;
smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
smtpClient.Credentials = new NetworkCredential("myemail@gmail.com", "password");
smtpClient.Timeout = 20000;
}
mailMessage.To.Add(model.Email);
mailMessage.From = new MailAddress("support@team.com");
mailMessage.Subject = "Modification de mot de passe";
mailMessage.Body = "Vous avez modifié votre mot de passe de votre Compte ";
mailMessage.Body += Environment.NewLine;
mailMessage.Body += "le nouveau mot de passe est : ";
mailMessage.Body += newPassword;
smtpClient.Send(mailMessage);
我得到这个异常:
La réponse du serveur était : 5.5.1 Authentication Required.
最后一行代码。
我想知道这个问题的原因是什么?我该如何解决?
您需要告诉 SMTP 客户端您将不会使用您的 windows 凭据访问 SMTP,因此添加
smtpClient.UseDefaultCredentials = false;
上面这行代码
smtpClient.Credentials = new NetworkCredential("myemail@gmail.com", "password");
此外,gmail 不允许模拟,因此
mailMessage.From = new MailAddress("support@team.com");
不会有任何影响 - 电子邮件仍将显示为从您正在访问的电子邮件帐户发送。
此外,请确保在您的 gmail 帐户上设置 "allow less-secure applications",并且未启用双因素身份验证。
您的帐户启用了 SSL 吗?
根据您的 Gmail 帐户设置,您可能会在应用程序中遇到身份验证错误。如果您的 Gmail 帐户使用两步验证,您应该生成一个应用程序密码以用于您的 mailer_password 参数。您还应确保允许安全性较低的应用程序访问您的 Gmail 帐户。