发送邮件错误

时间:2014-09-03 05:28:09

标签: c#

我使用下面显示的代码,并在web.config文件中设置设置,但是我收到此错误:

  

SMTP服务器需要安全连接,或者客户端未经过身份验证。服务器响应为:5.5.1需要身份验证。

了解更多信息

代码:

protected void btnSubmit_Click(object sender, EventArgs e)
{
    System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage();
    mail.Subject = "Demo to Semnd Message";
    mail.To.Add("sabirshaikh99@yahoo.co.in");// ("only4sabir@3sixtyit.com");
    mail.IsBodyHtml = true;
    mail.Body = "<html> <body> <div style='margin:10px;padding:5px;border:1px solid #fff000;'>" + txtMessage.Text + " </div> </body></html>";

    System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient();
    //smtp.EnableSsl = true;
    smtp.Send(mail);
}

web.config档案:

<mailSettings>
    <smtp from="only4sabir@gmail.com" deliveryMethod="Network">
      <network defaultCredentials="false" host="smtp.gmail.com" port="587" password="password" userName="only4sabir@gmail.com" enableSsl="true"/>    
    </smtp>
</mailSettings>

请检查上面的代码并给我一个解决方案。

2 个答案:

答案 0 :(得分:1)

如此处所述: - http://www.mywindowshosting.com/support/KB/a1546/send-email-from-gmail-with-smtp-authentication-but.aspx

  

使用SMTP身份验证从Gmail发送电子邮件,但获得了“5.5.1   需要验证“错误

     

使用Gmail时,可能会收到以下提到的错误消息   帐户通过您的脚本发送电子邮件

     

SMTP服务器需要安全连接,否则客户端不需要   认证。服务器响应为:5.5.1需要身份验证。

     

解决方案:

     
      
  1. 请确保您已在脚本中正确设置SMTP身份验证,有关示例代码,请单击此处

  2.   
  3. 如果您的SMTP脚本没有问题,但仍然收到上述消息,则应该因为Gmail被屏蔽了   来自我们服务器的身份验证,因为它检测到它是第一个   您从其他国家/地区或位置登录Gmail帐户的时间。   您需要登录gmail安全中心批准   authntication。一旦您批准,请等待几分钟   再次从脚本发送电子邮件。以下是批准的步骤   来自gmail安全中心的“异常活动警报”   a)去gmail   安全中心通过此链接打击或谷歌搜索“gmail   “使用您的Gmail帐户登录”   https://accounts.google.com/ServiceLogin?elo=1
      b)旁边的“安全”   /“近期活动”,点击“查看所有活动”
      c)你将能够   看“异常活动”,它会显示所有不寻常的活动事件,   选择相关事件并通过点击“是的,那就是我!”来批准它。

  4.   

答案 1 :(得分:0)

SMTP服务器需要安全连接,或者客户端未经过身份验证。服务器响应为:5.5.1需要身份验证。

了解更多信息

解决方案:
1.Disable你的Gmail帐号第二验证码。然后只有一个安全的邮件可以发送到客户端。否则验证码将阻止邮件发送活动。

2.defaultCredentials = “假”

3.试试这个简单的方法 Sending mail through C# And Asp.net