.NET發(fā)送郵件遇到問題及解決方法
.NET后臺代碼利用QQ郵箱服務(wù)器發(fā)送郵件遇到的問題:"mail from address must be same as authorization user"
首先,看下我的代碼實現(xiàn)
后臺代碼:
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ī)地址和端口號--> <add key="smtp" value="smtp.qq.com"/> <add key="smtpPort" value="25"/> <!--發(fā)送人郵箱賬號密碼--> <add key="emailAccount" value="53xxx1314"/> <!--此密碼非QQ密碼,而是郵箱生成的密碼--> <add key="emailPassword" value="stxxxxxxxxtscbbb"/> </appSettings>
代碼已經(jīng)搞定,剩下的就是跑起來了
第一次跑起來遇到問題就是開頭所說的"mail from address must be same as authorization user"
具體為什么會這樣呢,我的賬號密碼沒錯啊,看了幾篇博友的文章后確定是QQ郵箱密碼出問題了。但是我用QQ密碼登入郵箱是正常的,然后嘗試開啟POP/SMTP服務(wù),發(fā)現(xiàn)了主要問題
QQ郵箱的POP/SMTP 服務(wù)沒開啟
操作步驟:
進(jìn)入QQ郵箱->設(shè)置->賬戶->滾動到“POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務(wù)”
如果是沒有開啟,那就開啟它
我沒有開啟,點擊后需要發(fā)送短信,配置郵件客戶端
發(fā)送短信完畢后,獲得了授權(quán)碼,將授權(quán)碼替換我在代碼中寫的qq密碼,然后重新跑起來,錯誤消失,主要是未授權(quán)問題
注意,授權(quán)碼會在QQ密碼或獨立密碼修改后而失效 ,需要重新獲得。
重新運行,沒有問題
問題雖然不是很大,也沒有太多技術(shù)含量,但是能節(jié)省我們再次遇到這種問題,卻想不起怎么解決的,回顧起來,總比重新重視要節(jié)省時間。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
asp.net中MVC借助Iframe實現(xiàn)無刷新上傳文件實例
這篇文章主要介紹了asp.net中MVC借助Iframe實現(xiàn)無刷新上傳文件的方法,詳細(xì)分析了前端界面、回調(diào)函數(shù)與后臺處理的詳細(xì)流程,非常具有參考借鑒價值,需要的朋友可以參考下2014-12-12ASP.NET MVC 中實現(xiàn)基于角色的權(quán)限控制的處理方法
在ASP.NET MVC中,通過使用其所提供的內(nèi)置2013-03-03asp.net開發(fā)微信派發(fā)現(xiàn)金紅包/H5網(wǎng)頁搶紅包功能(思路詳解)
這篇文章主要介紹了asp.net開發(fā)微信派發(fā)現(xiàn)金紅包/H5網(wǎng)頁搶紅包功能,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03asp.net 獲取目錄下的文件數(shù)和文件夾數(shù)
遍歷一個文件夾中的文件,需要用到DirectoryInfo類中的一個重要的方法GetFileSystemInfos(),此方法返回指定的是與搜索條件相匹配的文件和子目錄的強(qiáng)類型 FileSystemInfo對象的數(shù)組。2010-07-07進(jìn)度條在.net導(dǎo)入Excel時的應(yīng)用實例
這篇文章主要介紹了進(jìn)度條在.net導(dǎo)入Excel時的應(yīng)用,以實例形式講述了.net導(dǎo)入Excel時根據(jù)頁面情況顯示進(jìn)度條的實現(xiàn)方法,非常具有實用價值,需要的朋友可以參考下2014-10-10GridView控件實現(xiàn)數(shù)據(jù)的修改(第9節(jié))
這篇文章主要介紹了GridView控件實現(xiàn)數(shù)據(jù)的修改,需要的朋友可以參考下2015-08-08ASP.NET Core MVC/WebApi基礎(chǔ)系列1
這篇文章主要介紹了ASP.NET Core MVC/WebApi基礎(chǔ)系列,后續(xù)會穿插講EF Core和ASP.NET Core,雖說是基礎(chǔ)系列但也是也有你不知道的。2019-04-04