我在 Web 应用程序上使用 MVC ASP.NET Core 1.1.2。我尝试使用 MailKit 1.18.1.1 创建联系表单。我通过电子邮件 (gmail) 发送联系表格信息。当我在本地构建网页时,一切都按预期进行。我第一次在本地运行该程序时,它给了我同样的错误,但我启用了我的邮件地址的安全设置,它开始工作了。但是当我在网络上部署它时,即使我将安全设置设置为启用不太安全的应用程序,它也会给我这样的错误:
这是我在 Home Controller 中的 SendMail 方法:
public IActionResult SendMail(string name, string phone, string email, string msg)
{
var message = new MimeMessage();
message.From.Add(new MailboxAddress ("theemailaddress@gmail.com"));
message.To.Add(new MailboxAddress("theemailaddresswhichrecievestheinfo@gmail.com"));
message.Subject = name;
message.Body = new TextPart("html")
{
Text = "Kimden: " + name + "<br>" + "Mail adresi: " + email + "<br>" +
"Mesaj: " + msg + "<br>" + "Telefon: " + phone
};
using (var client = new SmtpClient())
{
client.Connect("smtp.gmail.com", 587);
client.Authenticate("theemailaddress@gmail.com", "thepassword(I am sure it's correct)");
client.Send(message);
client.Disconnect(false);
}
return View("Contact");
}
这是我的表单的 Contact.cshtml 代码:
@using (Html.BeginForm("SendMail", "Home"))
{
<div class="contactForm">
<form action="" method="POST" role="form" class="form">
<div class="form-group">
<input name ="name" type="text" class="form-control" id="" placeholder="Adın">
</div>
<div class="form-group">
<input name ="email" type="email" class="form-control" id="" placeholder="Mail Adresin">
</div>
<div class="form-group">
<input name="phone" type="text" class="form-control" id="" placeholder="Telefonun">
</div>
<div class="form-group">
<textarea name="msg" class="form-control" id="" placeholder="Mesajın"></textarea>
</div>
<button type="submit" class="btn buttonCustomPrimary">Mesaj gönder</button>
</form>
</div>
}
最佳答案
确保您已启用对“不可靠”来源的帐户的访问权限: https://myaccount.google.com/lesssecureapps
关于c# - 身份验证异常 : AuthenticationMechanismTooWeak: 5. 7.14,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46632411/