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

如何修复 System.Net.Mail.SmtpException

如何解决如何修复 System.Net.Mail.SmtpException

This is Image Of Error这是完整的问题 System.Net.Mail.SmtpException: 'SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.7.0 Authentication required

    `private void button1_Click(object sender,EventArgs e)
    {
        MailMessage mail = new MailMessage(from.Text,to.Text,subject.Text,body.Text);

        SmtpClient client = new SmtpClient(smtp.Text,587);

        client.Port = 587;
        client.Credentials = new System.Net.NetworkCredential(username.Text,password.Text);

        client.EnableSsl = true;
        client.Send(mail);
        MessageBox.Show("Mail Sent!","Success",MessageBoxButtons.OK);
    }`

这是代码,我尝试了所有事情,请告诉我如何修复电子邮件发件人

解决方法

因为您使用自定义凭据并使用身份验证 (enablessl = true)。连同您自己的登录名(非默认),您需要添加:

client.UseDefaultCredentials = false;

在设置 client.credentials 之前

否则您填写的凭据将不会被使用

编辑: 如前所述添加此行时,仍然存在身份验证问题。尝试检查所有变量是否正确。这可以使用以下网站完成:https://www.smtper.net/

从技术上讲,应该在开始编程之前测试变量。

您收到的错误是“SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.7.0 Authentication Required。意味着您没有使用 HTTPS 和/或无法使用凭据进行身份验证。因此,smtper.net 是确定您的凭据是否正确的最佳工具。

除了添加 client.usedeafultcredentials = false 之外,您的代码乍一看似乎是正确的。这就是我假设您使用的变量不正确的原因。

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