.NET發(fā)送郵件遇到問(wèn)題及解決方法
.NET后臺(tái)代碼利用QQ郵箱服務(wù)器發(fā)送郵件遇到的問(wèn)題:"mail from address must be same as authorization user"
首先,看下我的代碼實(shí)現(xiàn)
后臺(tái)代碼:
public class EmailHelper
{
/// <summary>
/// 發(fā)送郵件
/// </summary>
/// <param name="subject">主題</param>
/// <param name="body">內(nèi)容</param>
public static void SendEmail(string subject,string body)
{
var mailFrom = ConfigurationManager.AppSettings["mailFrom"];
var mailTo = ConfigurationManager.AppSettings["mailTo"];
var mailCC = ConfigurationManager.AppSettings["mailCC"];
var smtp = ConfigurationManager.AppSettings["smtp"];
var smtpPort = Convert.ToInt32(ConfigurationManager.AppSettings["smtpPort"]);
var emailAccount = ConfigurationManager.AppSettings["emailAccount"];
var emailPassword = ConfigurationManager.AppSettings["emailPassword"];
//郵件內(nèi)容信息
MailMessage mailMessage = new MailMessage
{
From = new MailAddress(mailFrom),
Subject = subject,
Body = body,
};
mailMessage.To.Add(mailTo);
mailMessage.CC.Add(mailCC);
//郵箱服務(wù)器配置
SmtpClient smtpClient = new SmtpClient(smtp, smtpPort)
{
Credentials = new NetworkCredential(emailAccount, emailPassword),
EnableSsl = true,
};
//發(fā)送郵件
smtpClient.Send(mailMessage);
}
}
配置文件:
<appSettings> <!--發(fā)送人、收件人、抄件人--> <add key="mailFrom" value="53xxx1314@qq.com"/> <add key="mailTo" value="89xxxx734@qq.com"/> <add key="mailCC" value="89xxx734@qq.com"/> <!--郵箱服務(wù)器主機(jī)地址和端口號(hào)--> <add key="smtp" value="smtp.qq.com"/> <add key="smtpPort" value="25"/> <!--發(fā)送人郵箱賬號(hào)密碼--> <add key="emailAccount" value="53xxx1314"/> <!--此密碼非QQ密碼,而是郵箱生成的密碼--> <add key="emailPassword" value="stxxxxxxxxtscbbb"/> </appSettings>
代碼已經(jīng)搞定,剩下的就是跑起來(lái)了
第一次跑起來(lái)遇到問(wèn)題就是開(kāi)頭所說(shuō)的"mail from address must be same as authorization user"
具體為什么會(huì)這樣呢,我的賬號(hào)密碼沒(méi)錯(cuò)啊,看了幾篇博友的文章后確定是QQ郵箱密碼出問(wèn)題了。但是我用QQ密碼登入郵箱是正常的,然后嘗試開(kāi)啟POP/SMTP服務(wù),發(fā)現(xiàn)了主要問(wèn)題
QQ郵箱的POP/SMTP 服務(wù)沒(méi)開(kāi)啟

操作步驟:
進(jìn)入QQ郵箱->設(shè)置->賬戶->滾動(dòng)到“POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務(wù)”

如果是沒(méi)有開(kāi)啟,那就開(kāi)啟它
我沒(méi)有開(kāi)啟,點(diǎn)擊后需要發(fā)送短信,配置郵件客戶端
發(fā)送短信完畢后,獲得了授權(quán)碼,將授權(quán)碼替換我在代碼中寫的qq密碼,然后重新跑起來(lái),錯(cuò)誤消失,主要是未授權(quán)問(wèn)題
注意,授權(quán)碼會(huì)在QQ密碼或獨(dú)立密碼修改后而失效 ,需要重新獲得。

重新運(yùn)行,沒(méi)有問(wèn)題

問(wèn)題雖然不是很大,也沒(méi)有太多技術(shù)含量,但是能節(jié)省我們?cè)俅斡龅竭@種問(wèn)題,卻想不起怎么解決的,回顧起來(lái),總比重新重視要節(jié)省時(shí)間。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Asp.net發(fā)送郵件的兩種方法小結(jié)
- 在asp.NET 中使用SMTP發(fā)送郵件的實(shí)現(xiàn)代碼
- .net發(fā)送郵件實(shí)現(xiàn)代碼
- asp.net System.Net.Mail 發(fā)送郵件
- .NET實(shí)現(xiàn)定時(shí)發(fā)送郵件代碼(兩種方式)
- 在ASP.NET2.0中通過(guò)Gmail發(fā)送郵件的代碼
- .net中 發(fā)送郵件內(nèi)容嵌入圖片的具體實(shí)例
- asp.net mvc發(fā)送郵件實(shí)例講解
- asp.net發(fā)送郵件實(shí)現(xiàn)方法
- C#.NET發(fā)送郵件的實(shí)例代碼
相關(guān)文章
MAUI項(xiàng)目中使用SnackBar與Toast通知功能
這篇文章介紹了MAUI項(xiàng)目中使用SnackBar與Toast通知功能的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-02-02
asp.net DataSet轉(zhuǎn)換成josn并輸出示例
如何將DataSet轉(zhuǎn)換成josn并輸出,這是很多新手朋友們遇到的問(wèn)題,下面有個(gè)不錯(cuò)的示例,希望對(duì)大家有所幫助2014-01-01
asp.net下配置數(shù)據(jù)源時(shí)出現(xiàn): 未將對(duì)象引用設(shè)置到對(duì)象的實(shí)例。
未將對(duì)象引用設(shè)置到對(duì)象的實(shí)例的一個(gè)另類解決方法2008-06-06
ASP.NET 固定標(biāo)題列與欄位的具體實(shí)現(xiàn)
客戶提這個(gè)要求很久了,最近才時(shí)間弄,但是看到百度中要沒(méi)有很多詳細(xì)的代碼。廢話不多說(shuō)直接貼代碼。2013-06-06
.net任務(wù)調(diào)度框架FluentScheduler簡(jiǎn)介
這篇文章介紹了.net任務(wù)調(diào)度框架FluentScheduler,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07
asp.net小孔子cms中的數(shù)據(jù)添加修改
最近都在看小孔子cms的代碼,其添加與修改數(shù)據(jù)十分方便,做下筆記,代碼主要提取自小孔子cms,去掉了不用的函數(shù)并把相關(guān)代碼寫到一個(gè)文件中2008-08-08
ASP.NET中DES加密與解密MD5加密幫助類的實(shí)現(xiàn)代碼
這篇文章主要介紹了ASP.NET中DES加密與解密MD5加密幫助類的實(shí)例代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-07-07

