有时 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 (将#修改为@)