我的网站在443端口上运行,我已经用我自己的域名从谷歌购买了一个G Suite电子邮件帐户。这是我的c#代码:
SmtpClient objSmtp = new SmtpClient("smtp.gmail.com", "587");
objSmtp.UseDefaultCredentials = false;
NetworkCredential NetCreds = new NetworkCredential("service@MyDomainName.com", "Pass");
objSmtp.Credentials = NetCreds;
objSmtp.EnableSsl = true;
try
{
objSmtp.Send(objMail);
}
catch(Exception ex)
{
objSmtp.Send(objMail);
}
finally
{
objMail.Dispose();
}我已经启用了双因素身份验证,并使用新生成的密码进行身份验证。另外,我尝试使用不同的端口465。不走运。
当我使用我的个人Gmail "@gmail.com“账户时,”允许不太安全的应用“设置为”开“,它工作得很好。现在,在购买了G Suite订阅后,我遇到了一些问题。我收到以下错误:“SMTP服务器要求安全连接或客户端未经过身份验证。服务器响应为:需要5.7.0身份验证。”
有人能发现问题所在吗?
发布于 2020-01-29 14:44:01
维克多感谢你的回复!现在我们知道“可疑登录尝试”不是导致问题的原因,因为您已授权访问。我能想到的唯一一件事就是Google期望SSL连接。
我们可以用两种方法中的一种来做。如果您希望继续使用TLS,可以通过将EnableSsl设置为true来设置SSL的属性以启用SmtpClient。
SmtpClient objSmtp = new SmtpClient("smtp.gmail.com", "587");
objSmtp.EnableSsl = true;或将端口设置为465
SmtpClient objSmtp = new SmtpClient("smtp.gmail.com", "465");希望这能有所帮助!
https://stackoverflow.com/questions/59941482
复制相似问题