簡體   English   中英

如何修復 System.Net.Mail.SmtpException

[英]How Can I Fix 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);
    }`

這是代碼,我試過了,請告訴我如何修復它 Email 發件人

因為您使用自定義憑據並使用身份驗證 (enablessl = true)。 連同您自己的登錄名(非默認),您需要添加:

client.UseDefaultCredentials = false;

在設置 client.credentials 之前

否則您填寫的憑據將不會被使用

編輯:如前所述添加此行時,仍然存在身份驗證問題。 嘗試檢查所有變量是否正確。 這可以使用網站完成: https://www.smtper.net/

從技術上講,應該在開始編程之前測試變量。

您收到的錯誤“SMTP 服務器需要安全連接或客戶端未通過身份驗證。 服務器響應是:需要 5.7.0 身份驗證。 表示您沒有使用 HTTPS 和/或無法使用憑據進行身份驗證。 因此,smtper.net 是查明您的憑據是否正確的最佳工具。

除了添加 client.usedeafultcredentials = false 之外,您的代碼乍一看似乎是正確的。 這就是為什么我假設您正在使用的變量不正確。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM