错误。 SMTP服务器需要安全连接或客户端未经过身份验证。服务器响应是:5.5.1需要身份验证???

时间:2014-09-15 02:31:42

标签: c# asp.net email smtp gmail

这是我的代码

private void sendEmail()
    {
            var fromAddress = new MailAddress("gmail email", "name");
            var toAddress = new MailAddress("email", "name");
            const string fromPassword = "password";
            const string subject = "ERROR";

            var smtp = new SmtpClient
            {
                Host = "smtp.gmail.com",
                Port = 587,
                EnableSsl = true,
                DeliveryMethod = SmtpDeliveryMethod.Network,
                Credentials = new NetworkCredential(fromAddress.Address, fromPassword),
                UseDefaultCredentials = false,
                Timeout = 20000
            };
            using (var message = new MailMessage(fromAddress, toAddress)
            {
                Subject = subject,
                Body = "this is an example",
            })
            {
                smtp.Send(message);
            }
    }

当我调试应用程序时,它将停在smtp.Send(消息)并显示错误消息“SMTP服务器需要安全连接或客户端未经过身份验证。服务器响应为:5.5.1身份验证需要吗?“

我该怎么办?有时候它会起作用,有时却不起作用。

1 个答案:

答案 0 :(得分:0)

您可以面对这个问题。检查以下内容

1)如果您提供了正确的电子邮件和密码,请重新检查。

2)检查您的GMail帐户是否有两步验证。

3)Gmail有时会停止发送邮件,因此请登录您的Gmail帐户,并且可能会开始工作。

4)如果你的gmail帐户和生产服务器有不同时区的问题,请参阅此链接。

访问安全性较低的应用Link

希望一旦这对你有所帮助。