如何修复System.Net.Mail.SmtpException



这是错误图像这是完整问题System.Net.Mail.SmtpException:'SMTP服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.7.0需要身份验证。

`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需要身份验证。'意味着您没有使用HTTPS和/或无法使用凭据进行身份验证。因此,smtper.net是查明您的凭据是否正确的最佳工具。

乍一看,您的代码似乎是正确的,只是添加了client.usedeafultcredentials=false。Wich就是为什么我假设你使用的变量是不正确的。

最新更新