本文介绍了SMTP 服务器需要安全连接或客户端未通过身份验证的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我收到了这个错误
The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.0 Must issue a STARTTLS command first. e17sm974159fak.34
Web.config
<mailSettings>
<smtp deliveryMethod="Network"
from="emailaccount@gmail.com">
<network defaultCredentials="false" host="smtp.gmail.com" port="587"
userName="emailaccount@gmail.com" password="12345678" />
</smtp>
</mailSettings>
代码文件
public void Submit()
{
EnsureCurrentlyValid();
// Send via email
var message = new StringBuilder();
message.AppendFormat("Date: {0:yyyy-MM-dd hh:mm}
", DateTime.Now);
message.AppendFormat("Email from: {0}
", Name);
message.AppendFormat("Email: {0}
", Email);
message.AppendFormat("Message: {0}
", Message);
SmtpClient smtpClient = new SmtpClient();
MailMessage m = new MailMessage(
"visitor@mydomain.com", // From
"emailaccount@gmail.com", // To
"Suggestion/Comments", // Subject
message.ToString()); // Body
smtpClient.Send(m);
}
推荐答案
尝试设置 EnableSsl 属性为真:
Try setting the EnableSsl property to true:
smtpClient.EnableSsl = true;
AFAIK 这个属性只能在代码中设置,不能在配置文件中指定.
AFAIK this property can only be set in code and cannot be specified in the config file.
这篇关于SMTP 服务器需要安全连接或客户端未通过身份验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!