微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有时 System.Net.Mail.SmtpException: SMTP 服务器需要安全连接或客户端未通过身份验证

如何解决有时 System.Net.Mail.SmtpException: SMTP 服务器需要安全连接或客户端未通过身份验证

我使用 SmtpClient 发送邮件。但是,当我运行代码时,有时会抛出“System.Net.Mail.SmtpException:SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.7.0 身份验证必填。”

如果我运行代码 10 次,可能有 1 次发送失败并抛出异常“System.Net.Mail.SmtpException: The SMTP server requires a secure connection or the client was not authentication.The服务器响应为:需要 5.7.0 身份验证。"

下面是我的代码

using (SmtpClient smtpClient = new SmtpClient()
{
    Host = "smtp.gmail.com",Port = 587,EnableSsl = true,UseDefaultCredentials = false,DeliveryMethod = SmtpDeliveryMethod.Network,Credentials = new NetworkCredential("*************","**********")
})
{
    MailMessage mail = new MailMessage
    {
        From = new MailAddress("*************@gmail.com","******")
    };

    mail.To.Add("**********@gmail.com");
    mail.Subject = "Password Reset";
    mail.IsBodyHtml = true;
    mail.Body = "test";

    smtpClient.TargetName = "SMTPSVC/smtp.gmail.com";
    smtpClient.Send(mail);
};

供您参考,

  1. 我已开启允许不太安全的应用。
  2. 我已禁用两步验证。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。