我正在尝试使用ASP.NET Web API发送电子邮件。我正在使用smtp.gmail.com和587获取身份验证问题。我看到有几个链接说要在我的Google Apps帐户上切换“允许不太安全的应用”选项,但我宁愿不必向所有者解释为什么他们需要选择这种可疑的声音。
有没有办法在Google中包装Google的电子邮件请求,或者我是否必须选择“允许安全性较低的应用”选项?
这是我正在使用的Google不喜欢的代码。
using (var client = new SmtpClient("smtp.googlemail.com", 587))
{
client.Credentials =
new System.Net.NetworkCredential("address@yourdomain.com", "yourpassword");
client.EnableSsl = true;
var msg = new MailMessage("address@yourdomain.com", "toaddress@anotherdomain.com");
msg.Body = "[YOUR EMAIL BODY HERE]";
msg.Subject = "[Message Subject]";
client.Send(msg);
}
答案 0 :(得分:6)
以下是如何做到这一点(简而言之):
- 在“我的帐户/登录&成就相同的帐户中启用您的Gmail或Google Apps帐户中的两步验证安全”,
- 然后(在“我的帐户/登录和安全/应用密码”中)可以生成一个特殊密码,以便从其他应用程序访问(无需启用两步验证,您无法到达那里)
- 此创建的应用密码(以及您的Google电子邮件帐户作为用户名),然后您可以将其用作SMTP登录信息。
醇>
就是这样。