【发布时间】:2018-12-14 07:40:44
【问题描述】:
电子邮件代码在本地主机上工作,但是当我在服务器上上传网站时,它显示错误 SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.5.1 需要身份验证。了解更多信息,请访问
//Formatted
protected void btnSend_Click(object sender, EventArgs e)
{
var fromAddress = "djdanny1255@gmail.com";
string email = "djdanny1255@gmail.com";
var toAddress = email;
const string fromPassword = "********";
string subject = "Email=" + txtEmail.Text + " Phone=" + txtMobile.Text;
string body = txtMessage.InnerText;
try
{
using (MailMessage mm = new MailMessage(fromAddress, email))
{
mm.Subject = subject;
mm.Body = body;
mm.IsBodyHtml = false;
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.EnableSsl = true;
NetworkCredential NetworkCred = new NetworkCredential(fromAddress, fromPassword);
smtp.UseDefaultCredentials = true;
smtp.Credentials = NetworkCred;
smtp.Port = 587;
smtp.Send(mm);
}
}
catch (Exception ex)
{
Response.Write("Error" + ex.Message);
}
【问题讨论】:
-
您需要在托管站点的服务器上检查 SMTP 许可权限。通常不是每个服务器都允许 SMTP 请求,有时它会阻止 IP。在大多数此类情况下,我们需要允许并允许主机服务器上的端口号。希望对你有帮助。
标签: asp.net asp.net-mvc email asp.net-mvc-4