微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SMTP服务器需要安全连接,或者客户端未通过身份验证[BYAPR21CA0017.namprd21.prod.outlook.com]

如何解决SMTP服务器需要安全连接,或者客户端未通过身份验证[BYAPR21CA0017.namprd21.prod.outlook.com]

我尝试发送邮件时收到此错误消息。

SMTP服务器需要安全连接,或者客户端未通过身份验证。服务器响应为:5.7.57 SMTP;客户端未通过身份验证可以在[BYAPR21CA0017.namprd21.prod.outlook.com]的邮件中发送匿名邮件

以下是我的代码

public static string SendMail(string ToEmail,string Subj,string Message,string mailHostAdd,string mailSenderId,string mailPassword)
    {
      try
        {
            ServicePointManager.SecurityProtocol = (SecurityProtocolType)192 | (SecurityProtocolType)768 | (SecurityProtocolType)3072 | SecurityProtocolType.Tls12;

            //string HostAdd = mailHostAdd.ToString();
            string HostAdd = "smtp.office365.com";
           
            string FromEmailid = mailSenderId.ToString();
            string Pwd = mailPassword.ToString();

            System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(FromEmailid.ToString(),ToEmail.ToString(),Subj.ToString(),Message.ToString());
            message.IsBodyHtml = true;
            SmtpClient mailclient = new SmtpClient();
            NetworkCredential smtpuser = new NetworkCredential(FromEmailid,Pwd);

            SmtpClient smtp = new SmtpClient();
            smtp.UseDefaultCredentials = false;
            smtp.Credentials = smtpuser;
            smtp.Port = 587;
            smtp.Host = HostAdd;
            smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
            smtp.EnableSsl = true;
            message.DeliveryNotificationoptions = DeliveryNotificationoptions.OnSuccess;

            smtp.Send(message);
            return "Mail sent successfully!";
        }
        catch (Exception ex)
        {
            return ex.Message.ToString();
        }

请帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。