SMTP服务器需要安全连接,或者客户端未通过身份验证.发送邮件时出现异常

本文关键字:身份验证 异常 安全 服务器 连接 客户端 或者 SMTP | 更新日期: 2023-09-27 17:59:32

我试图通过c#代码发送邮件,但收到以下异常。CCD_ 1。服务器响应为:5.5.1需要身份验证。如果我使用个人gmail smtp设置发送邮件,则此代码工作正常,但当我使用客户端smptp设置时,会出现此异常。应用程序托管在美国服务器上。

我不知道我哪里做错了,请帮帮我。

 public static void sendBulkMail()
 {   
            DataSet _ds = new DataSet();
            SMTPBAL smtpbl = new SMTPBAL(0);
            smtpbl.LoadAll(_ds);    
            string server = _ds.Tables[smtpbl.SqlEntityX].Rows[0]["SMTPX"].ToString();
            int smtpPort = WebHelper.Cast(_ds.Tables[smtpbl.SqlEntityX].Rows[0]["smtpPort"].ToString(), 0);
            string From = _ds.Tables[smtpbl.SqlEntityX].Rows[0]["Email"].ToString();
            string User = _ds.Tables[smtpbl.SqlEntityX].Rows[0]["User"].ToString();
            string Password = _ds.Tables[smtpbl.SqlEntityX].Rows[0]["Password"].ToString();
            string sDisclaimer = _ds.Tables[smtpbl.SqlEntityX].Rows[0]["Disclaimer"].ToString();
            bool EnableSSl = WebHelper.Cast(_ds.Tables[smtpbl.SqlEntityX].Rows[0]["EnableSll"], false);
            string EmailAddress = string.Empty;
            StudentBAL _stbl = new StudentBAL(0);
            _stbl.LoadAll(_ds);
            foreach (DataRow dr in _ds.Tables[_stbl.SqlEntityX].Rows)
            {
                try
                {
                    if (dr["Email"] != DBNull.Value)
                    {
                        if (IsValidMailAddress(dr["Email"].ToString()))
                        {
                            string Message = "Dear parent,<br/><br/> <br/> The Attendance for current course/semester of your ward," + dr["Name"].ToString() + " is available on the given below link.Please check and contact HOD in case any enquiry.<br/><br/><br/>Copy below link to your browsers address bar. <br/><br/>http://insr.MNMtechnologies.net/login/login.aspx <br/>User Name :" + dr["LoginEmailAddress"].ToString() + " / " + dr["EmailAddress"].ToString() + "<br/>Password : " + dr["Password"].ToString() + "<br/><br/><br/>Regard's<br/><br/>Institute of   management.<br/> .";
                            SMTPHelper SMTP1 = new SMTPHelper(server, smtpPort, From, Password, EnableSSl, true);
                            SMTP1.IsHTML = true;
                            SMTP1.SendEmail(From, "Institute of management", dr["Email"].ToString(), "", "", "Attendance status of your ward.", Message, false);
                        }
                    }
               }
               catch (Exception err) { }   
          }
  }

SMTP服务器需要安全连接,或者客户端未通过身份验证.发送邮件时出现异常

我之前也遇到过类似的问题,我建议您重新检查以下内容:

  • EnableSSL true或false
  • 再次检查凭据
  • 有时某些SMTP服务器(主要用于公司)不允许外部访问,或者有一个单独的IP用于外部访问
  • 检查用户名是否应包含@Host.com

我希望其中一个对你有用。