首页 > 解决方案 > 发送邮件时出现 SMTP 服务器连接错误

问题描述

我在发送电子邮件时收到服务器错误。

SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:需要 5.7.0 身份验证。了解更多...

            MailMessage message = new MailMessage();
            using (var smtp = new SmtpClient())
            {
                message.From = new MailAddress("email");
                message.To.Add(new MailAddress(toEmailAddress));

                message.Subject = "Order Confirmation - Bahwan Electronics";
                message.IsBodyHtml = true; //to make message body as html  
                message.Body = htmlString;
                smtp.Port = 587;
                smtp.Host = "smtp.gmail.com"; //for gmail host  
                smtp.EnableSsl = true;
                smtp.UseDefaultCredentials = false;
                smtp.Credentials = new NetworkCredential("email", "password");
                smtp.DeliveryMethod = SmtpDeliveryMethod.Network;

                smtp.Send(message);
                return true;
            }

我尝试了上面的代码,它在本地运行良好,但是当我将它托管在服务器中时,我遇到了错误。电子邮件中没有启用两因素身份验证,并且还启用了不太安全的应用程序。

我无法从先前针对同一问题提出的问题中找到任何解决方案。并尝试了所有解决方案。它在本地工作,但在托管它之后smtp.Send方法会引发错误。

标签: c#asp.netemail

解决方案


得到了上述问题的解决方案。

获取托管服务器的远程并使用我用来发送邮件的 emailId 登录到 gmail,然后在 gmail 上的审查用户活动中,我只是将该设备添加为“是的,它是我的”。

在那之后邮件开始工作..


推荐阅读