这是我的代码
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身份验证需要吗?“
我该怎么办?有时候它会起作用,有时却不起作用。
答案 0 :(得分:0)
您可以面对这个问题。检查以下内容
1)如果您提供了正确的电子邮件和密码,请重新检查。
2)检查您的GMail帐户是否有两步验证。
3)Gmail有时会停止发送邮件,因此请登录您的Gmail帐户,并且可能会开始工作。
4)如果你的gmail帐户和生产服务器有不同时区的问题,请参阅此链接。
访问安全性较低的应用Link。
希望一旦这对你有所帮助。