【发布时间】:2012-02-01 22:57:28
【问题描述】:
我终其一生都无法弄清楚为什么这不起作用
SmtpClient smtp = new SmtpClient
{
Host = "smtp.gmail.com",
Port = 587,
UseDefaultCredentials = false,
DeliveryMethod = SmtpDeliveryMethod.Network,
Credentials = new NetworkCredential("myemail@gmail.com", "myGmailPasswordHere"),
EnableSsl = true,
Timeout = 10000
};
smtp.Send(mail);
我明白了:
SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.5.1 Authentication Required。
我刚刚将 EnableSsl 指定为 true,因此这不应该是安全连接方面的问题。
我从 localhost 运行它。是的,我输入身份验证的用户名和密码(我的 gmail 帐户凭据)是 100% 正确的。
【问题讨论】:
-
你在web.config中声明了吗?
-
不,现在只是硬编码。无论是否测试 web.config 都应该无关紧要。
-
我已经编辑了我的答案让我知道它是否有效?
-
@CoffeeAddict 请检查答案并提供一个接受的答案,如果有的话。
标签: c# gmail smtpclient