日期:2014-05-17  浏览次数:21086 次

发送邮件 C# SMTP 服务器要求安全连接或...... 服务器响应为: 5.5.1

SmtpClient client = new SmtpClient("smtp.gmail.com", 587);
client.EnableSsl = true;
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential(strEmailAddress, "XXXXXXXXX");
client.DeliveryMethod = SmtpDeliveryMethod.Network;
try
{
    client.Send(msg);
}
......

发邮件的时候,对于某些邮箱会提示“System.Net.Mail.SmtpException: SMTP 服务器要求安全连接或客户端未通过身份验证。 服务器响应为: 5.5.1 Authentication Required. Learn more at”。对于某些邮箱又可以发送成功。

这些邮箱都是gmail邮箱,密码都是一样的。

请大家帮忙解答,谢谢。

------解决方案--------------------
是不是太频繁了?失败后重试,这个应该不是代码问题吧
------解决方案--------------------
smtp.gmail.com
Use Authentication: Yes
Port for TLS/STARTTLS: 587
Port for SSL: 465
^^^^^^^^^^^^^^^^^^^^^

SSL用465试试

------解决方案--------------------
就是说有的邮箱一直可以,有的却始终不行,不存在偶然因素?
------解决方案--------------------
strEmailAddress用用户名而不是邮件地址试一试。

代码没看出什么问题。
------解决方案--------------------
引用:
strEmailAddress用用户名而不是邮件地址试一试。

代码没看出什么问题。


应该不是这个问题。用户名就是邮件地址。
------解决方案--------------------
kao单位没法试,估计487端口没开。
------解决方案--------------------
代码没问题。。。是不是邮箱配置的不同。发送成功的和发送不成功的比较下配置。
------解决方案--------------------
定时,群发邮件,最好不要同类型邮箱,各种邮箱随机分批发送
LZ的问题可能是跟邮箱的有效性有关,有些邮箱可能已经被规则过滤或者禁用掉
------解决方案--------------------
是不是加密的问题