提起郵件服務,最先以前通常自建郵件服務器,須要硬軟件和運維的支持,穩定性也難保證,隨着雲服務的普及郵件推送功能的服務化是趨勢,也省錢省事省心。html
最先開始用過搜狐郵件服務,阿里雲生態如今基本都出現了,咱們來嘗試一下阿里雲的郵件推送服務:服務器
首先在阿里雲郵件推送控制檯添加域名,而後在本身的dns服務器中添加以下的解析(根據控制檯中的「配置」):運維
v=spf1 include:spf1.dm.aliyun.com -all
的TXT記錄,用於防止被看成垃圾郵件在mac上能夠經過nslookup -query=TXT 域名
與nslookup -query=MX 域名
命令查看DNS設置是否生效。測試
接着在阿里雲控制檯驗證一下域名,驗證成功以後,添加一下發信地址(發件地址),並設置一下SMTP密碼。阿里雲
而後經過下面的C#代碼使用阿里雲郵件推送服務的SMTP就能夠發送郵件了。spa
MailMessage mailMsg = new MailMessage(); mailMsg.To.Add(new MailAddress(" 收件人地址")); mailMsg.From = new MailAddress("控制檯建立的發信地址", "顯示名稱"); // 郵件主題 mailMsg.Subject = "測試郵件主題"; // 郵件正文內容 string text = "這是一封經過阿里雲郵件服務發送的郵件"; string html = @"歡迎使用<a href=""https://dm.console.aliyun.com"">郵件推送</a>"; mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(text, null, MediaTypeNames.Text.Plain)); mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, null, MediaTypeNames.Text.Html)); // 添加附件 string file = "D:\\1.bak"; Attachment data = new Attachment(file, MediaTypeNames.Application.Octet); mailMsg.Attachments.Add(data); //郵件推送的SMTP地址和端口 SmtpClient smtpClient = new SmtpClient("smtpdm.aliyun.com", 25); // 使用SMTP用戶名和密碼進行驗證 System.Net.NetworkCredential credentials = new System.Net.NetworkCredential("控制檯建立的發信地址", "SMTP密碼"); smtpClient.Credentials = credentials; smtpClient.Send(mailMsg);
最終相信阿里雲的穩定性,且價格是至關的便宜,還有天天200封的免費量,哈哈!code