demoshop

demo, trying to be the best_

官方網站
https://github.com/rnwood/smtp4dev

雖然說現在免費的訊息軟體很多,但對於系統來說使用 EMAIL 發送通知還是一個很常見的需求,也是一個很經濟實惠的解決方案,以往開發者在開發寄信程式時都要準備一個 SMTP 來做為測試信發送之用,無法自行架設 SMTP 的開發者或許會使用 GMAIL、HINET 的 SMTP 來做為測試用的 SMTP ,利用這種公開服務來做有一些壞處存在,比如會洩漏自己的帳號密碼,或是測試期間大量頻繁的寄信會被 EMAIL 服務商阻擋等等枝微末節的問題,到最後往往造成真正的程式沒測試到,都在處理周邊的小事,為了完全的避開這窘境,本篇文章將會介紹一個實用的小工具,讓各位開發人員在測試 SMTP 相關程式時不需要在有一堆的事前準備。

首先請將 smtp4dev 下載回來

smtp4dev 就只是一個執行檔


雙擊兩下滑鼠左鍵即可開啟 smtp4dev


一開始我們先點選「Options」進入設定畫面

 

(這裡的設定與收寄信無關,請自行決定要如何調整)


點選第二個頁籤「Server」

在這裡可以決定你的 Domain 要叫做什麼(本範例為 demo.tc)也可以決定 Port 為何(本範例為 25)

其餘的看的懂得可以調,看不懂的不要調,調整完畢後按下「OK」


回到 smtp4dev 後可以看到下方就顯示了監聽中


然後調整你的寄信程式,讓程式在偵錯的時候使用 127.0.0.1 這個 SMTP 位置

//建立 SmtpClient 物件 並設定 Gmail的smtp主機及Port  
System.Net.Mail.SmtpClient MySmtp = new System.Net.Mail.SmtpClient("127.0.0.1", 25);
//發送Email
MySmtp.Send("service@demo.tc", "tesssst@demo.tc", "媽我在這", "文件內容");
MySmtp.Dispose();

寄信以後就可以立即看到 smtp4dev 收到信了


如果你還有進階的測試需求可以點選「Inspect」就可以看到信件的完整封包

 

以上就很輕鬆自在的自己架了一個 SMTP 並且成功的寄信與收信,各位開發者不要再拿 GMAIL 來測試了^^

 

 

回應討論