使用smtp協議發送郵件(借用騰訊郵箱服務器)

SMTP 簡單郵件傳輸協議(Simple Mail Transfer Protocol) SMTP 的目標是可靠,高效的傳輸郵件。 使用C/S架構(默認端口25)

協議:即約定和規範,不同的程序可以通過相同的協議來解析數據,從而提高數據的交互性。

市面上有很多第三方組件,根據協議制定了能夠讓我們進行快速的搭建程序的腳手架。這裏我們就利用System.Net.Mail 來快速的寫一個利用smtp發送郵件的小程序.

1、首先,添加對using System.Net.Mail程序集的引用

2

 public static void TestMail()
        {
            try
            {
              
                string fromAddress = "[email protected]";
                string toAddress = "[email protected]";
                string subject = "Test Email";
                string bodyMessage = "This is a test email message. 娟娟是個大傻逼";

                // 創建 MailMessage 實例
                MailMessage mailMessage = new MailMessage(fromAddress, toAddress, subject, bodyMessage);
                // 設置其他屬性
                //mailMessage.CC.Add("[email protected]");
                mailMessage.IsBodyHtml = true;

                // 發送郵件
                SendEmail(mailMessage);


            }
            catch (Exception e)
            {
                throw e;
            }
        }

        static void SendEmail(MailMessage mailMessage)
        {
            using (SmtpClient smtpClient = new SmtpClient("smtp.qq.com", 25))
            {
               

                smtpClient.UseDefaultCredentials = true;
                smtpClient.EnableSsl = true;

                // 替換爲你的 SMTP 服務器的用戶名和密碼(授權碼)
                smtpClient.Credentials = new System.Net.NetworkCredential("1145696689", "iruoqiohazubffgb");
                try
                {
                    smtpClient.Send(mailMessage);
                    Console.WriteLine("Email sent successfully!");
                }
                catch (Exception ex)
                {
                    Console.WriteLine("Failed to send email: " + ex.Message);
                }
            }
        }

 

注意:

發送郵件,出現異常:服務器響應爲: Error: need EHLO and AUTH first !"
在使用 System.Net.Mail組建發送郵件的時候出現了"命令順序不正確。 服務器響應爲: Error: need EHLO and AUTH first !"異常

解決方法如下:

1.如果使用了qq郵箱請使用授權碼(不要用qq郵箱登錄密碼)

2.啓用smtp.UseDefaultCredentials = true;

3.啓用smtp.EnableSsl = true;

QQ郵箱 

POP3服務器地址:pop.qq.com(端口:110)

SMTP服務器地址:smtp.qq.com (端口:25)

QQ企業郵箱

POP3服務器地址:pop.exmail.qq.com(SSL啓用 端口:995)

SMTP服務器地址:smtp.exmail.qq.com(SSL啓用 端口:587/465

 

qq郵箱如何獲取授權碼

登錄網頁版的qq郵箱官網   點擊設置  點擊賬號  

找到

 直到根據步驟獲取到授權碼

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章