久久99久久人婷婷精品综合_超碰aⅴ人人做人人爽欧美_亚洲电影第三页_日韩欧美一中文字暮专区_波多野结衣的一区二区三区_婷婷在线播放_人人视频精品_国产精品日韩精品欧美精品_亚洲免费黄色_欧美性猛交xxxxxxxx

分享net網站開發中郵件發送功能

2022-12-29    分類: 網站建設

今天,給大家分享的是如何在.NET平臺中開發“郵件發送”功能。在網上搜的到的各種資料一般都介紹的比較簡單,那今天我想比較細的整理介紹下:

1) 郵件基礎理論知識

2) 郵件發送相關.NET類庫

3) 介紹我開發的一個發送郵件的小組件(MailHelper)

4) MailHelper組件的一個示例以及幾種方式發郵件的優劣測試

示例及組件源碼:

.NET開發郵件發送功能的全面教程(含郵件組件源碼).rar

郵件基礎理論知識

什么業務需要郵件功能?

1. 服務提供方:需提供郵件收發客戶端或Web服務。(eg:Outlook、QQ郵箱)。當然這些服務都是知名商提供。若是一般的小網站提供的郵件收發服務,不知道節操如何,誰敢用呢?就算你用了,別的知名商SMTP服務器也不認可從這小網站發出的郵件,出現SMTP服務器拒收來源郵件(視為惡意郵件或垃圾郵件)。

2. 安全性、機密性:比如某安全部門需要提供自己發郵件的SMTP服務器和收郵件POP3服務器以及相應的操作軟件

3. 電子商務、論壇等會員機制社區:主家需要向會員發送通知信息,比如:密碼重置、降價通知、留言通知、回復通知、訂閱通知、會員間交流等等。主家保證郵箱有效性的辦法常常是通過會員注冊、更換郵箱時發送“激活郵件”。

4. 郵件營銷:在大數據時代的現在,企業可以根據所掌握的數據預測客戶的需求,來提供主動推送營銷消息的功能;當然也有沒有預測能力的小商家通過郵件群發器進行撒網式郵件營銷。

5. 等等

什么是電子郵件協議?

當前常用的電子郵件協議有SMTP、POP3、IMAP4,它們都隸屬于TCP/IP協議簇。

1. SMTP

Simple Mail Transfer Protocol(即簡單郵件傳輸協議),它是一組用于從源地址到目的地址傳送郵件的規則,簡單的說就是:From-->To的傳送規則。由SMTP來控制信件中轉的方式。SMTP屬于TCP/IP家族中的一員,它幫助每一臺計算機在發送或中轉信件時找到下一個目的地。通過SMTP協議所指定的服務器,就可以把E-Mail寄到收信人的服務器上。SMTP服務器則是遵循SMTP協議的郵件發送服務器,用來中轉你發出的電子郵件。

SMTP目前已是事實上的E-Mail傳輸的標準。

2. POP3

Post Office Protocol 3(即郵局協議的第3個版本),負責從郵件服務器中檢索電子郵件。它要求郵件服務器完成下面幾種任務之一:從郵件服務器中檢索郵件并從服務器中刪除這個郵件;從郵件服務器中檢索郵件但不刪除它;不檢索郵件,只是詢問是否有新郵件到達。

POP3是因特網電子郵件的第一個離線協議標準。

3. IMAP4

Internet Message Access Protocol 4(即交互式數據消息訪問協議第四個版本),提供脫機和聯機訪問功能。是一種優于POP的新協議,是美國斯坦福大學在1986年開始研發的多重郵箱電子郵件系統。和POP一樣,IMAP也能下載郵件、從服務器中刪除郵件或詢問是否有新郵件,但IMAP克服了POP的一些缺點。例如,請求郵件服務器只下載所選中的郵件而不是全部郵件。客戶機可先閱讀郵件信息的標題和發送者的名字再決定是否下載這個郵件。通過用戶的客戶機電子郵件程序,IMAP可讓用戶在服務器上創建并管理郵件文件夾或郵箱、刪除郵件、查詢某封信的一部分或全部內容,完成所有這些工作時都不需要把郵件從服務器下載到用戶的個人計算機上。

默認情況下,當 IMAP4 電子郵件應用程序將電子郵件下載到客戶端計算機,下載郵件的副本會保留在電子郵件服務器上。正是由于用戶的電子郵件副本保留在電子郵件服務器上,用戶可以從多臺計算機上訪問相同的電子郵件。也可以實現電子郵件服務器上的多個文件夾與客戶端計算機上的多個文件夾同步。

SMTP/POP3工作方式如圖:

TCP的3次握手和4次揮手?

詳細可見《TCP3次握手/4次握手》

在 TCP 數據段報頭中,有六個包含控制信息的 1 bit字段,用于管理 TCP 進程。這些字段分別是:

URG —緊急指針

ACK —確認字段

PSH —推送功能

RST —重置連接

SYN —同步序列號

FIN —發送方已傳輸完所有數據

這些字段用作標志,由于它們都只有 1 bit大小,所以它們都只有兩個值:1 或者 0。當值設為 1 時,表示數據段中包含控制信息。

1. 三次握手,建立連接

在TCP/IP協議中,TCP協議提供可靠的連接服務,采用三次握手建立一個連接。

1) 建立連接時,客戶端A發送SYN包(SYN=j)到服務器B,并進入SYN_SEND狀態,等待服務器B確認。

2) 服務器B收到SYN包,必須確認客戶A的SYN(ACK=j+1),同時自己也發送一個SYN包(SYN=k),即SYN+ACK包,此時服務器B進入SYN_RECV狀態。

3) 客戶端A收到服務器B的SYN+ACK包,向服務器B發送確認包ACK(ACK=k+1),此包發送完畢,客戶端A和服務器B進入ESTABLISHED狀態,完成三次握手。

2. 四次揮手,關閉連接

由于TCP連接是全雙工的,因此每個方向都必須單獨進行關閉。這個原則是當一方完成它的數據發送任務后就能發送一個FIN來終止這個方向的連接。

1) 客戶端A發送一個FIN,用來關閉客戶A到服務器B的數據傳送。

2) 服務器B收到這個FIN,它發回一個ACK,確認序號為收到的序號加1。和SYN一樣,一個FIN將占用一個序號。

3) 服務器B關閉與客戶端A的連接,發送一個FIN給客戶端A。

4) 客戶端A發回ACK報文確認,并將確認序號設置為收到序號加1。

3. 為什么建立連接協議是三次握手,而關閉連接卻是四次揮手呢?

建立連接時,服務端LISTEN狀態下的SOCKET當收到SYN報文的連接請求后,它可以把ACK和SYN放在一個報文里來發送。

關閉連接時,當收到對方的FIN報文通知時,它僅僅表示對方沒有數據發送給你了;但未必你所有的數據都全部發送給對方了,所以你可能未必會馬上會關閉SOCKET,也即你可能還需要發送一些數據給對方之后,再發送FIN報文給對方來表示你同意現在可以關閉連接了,所以關閉連接的ACK報文和FIN報文多數情況下都是分開發送的。

常見的郵箱類型有哪些?

常見的郵箱類型有:免費郵箱、vip郵箱、域名郵箱、企業郵箱等等。

1. 免費郵箱

“免費郵箱”是郵件商家為任何人免費提供的電子郵件傳輸服務,作為交換,該網站上你請求電子郵件服務和一些個人信息的地方會顯示廣告。它更適合個人生活和娛樂的需要,卻并非那么注重郵箱的安全和功能。

部分免費郵件SMTP服務器參考設置:

span>Email類型 SMTP[Host]主服務器 Port[端口號] 是否可啟用SSL Gmail(Google的網絡郵件服務) smtp.gmail.com 587 True HotMail/Live smtp.live.com 25 True QQ/FoxMail(Foxmail被騰訊收購) smtp.qq.com 25 False 126(網易) smtp.126.com 25 False 163(網易) smtp.163.com 25 False Sina(新浪郵箱) smtp.sina.com 25 False Tom smtp.tom.com 25 False SoHu(搜狐郵箱) smtp.sohu.com 25 False Yahoo(雅虎郵箱)(已關閉) smtp.mail.yahoo.com 25 False

2. vip郵箱

“vip郵箱”即郵件商家提供的收費版郵件服務,在速度、安全、穩定性、容量、附件大小限制、群發數等方面相對好些。其SMTP服務器設置就是多了個vip字符。eg:smtp.vip.qq.com。郵箱地址:369220123@vip.qq.com。

3. 域名郵箱

“域名郵箱”是個性化郵件服務,能讓您用自己的域名做為后綴即“@自己的域名”,前提是你需要一個域名(通常域名要收費)。功能比免費郵箱要多:可分配單個郵箱、規劃容量、更加的安全、更好的穩定性、個性化名稱、郵件發送量更大、附件大小限制等等。

4. 企業郵箱

“企業郵箱”是域名郵箱,但通常是指通過付費方式獲得更好服務的郵箱。eg:您公司域名為www.abc.com,則SMTP服務器為:mail.abc.com,郵箱地址:office@abc.com;

使用企業郵箱的優勢:

1) 提升公司企業形象、郵箱穩定性、郵箱反垃圾反病毒性能、郵件收發速度;

2) 通過購買服務,能適應企業不斷升級需求;

3) 為員工分配(域名)企業郵箱,便于將流動員工所有業務聯系保留和延續下來;

4) 監控郵件(實際為郵件暗抄送功能),以防公司的機密和重要信息流失;

5) 獲得高性能郵件海外轉發功能,解決國際高效郵件收發、郵件營銷有效投遞等問題;

6) 出站電子郵件過濾,比如:敏感字過濾、基于政策郵件加密等等;

7) 等等。

郵件發送相關.NET類庫

在 .net1.1 ,用System.Web.Mail發送郵件。在.net2.0及之后版本,用System.Net.Mail發送郵件。主要用到了在.net2.0中新增的兩個類,分別是System.Net.Mail.MailMessage和System.Net.Mail.SmtpClient兩個類,在SMTP身份驗證方面用到了System.Net.NetworkCredential類。

1. MailMessage 類表示郵件的內容。

MailMessage常用屬性

From

MailAddress

獲取或設置此電子郵件的發信人地址。

兩者區別:當Sender與From都有設定時,Mail Server會取用Sender的設定發信,但郵件上的名稱會使用From的設定,而若不需要Sender和From同時設定時,則Sender可以免設,但From一定要設。詳細請看:《MailMessage的Sender和From?傻傻分不清楚》

Sender

To

MailAddressCollection

獲取包含此電子郵件的收件人的地址集合。

CC

MailAddressCollection

獲取包含此電子郵件的抄送(CC)收件人的地址集合。

Bcc

MailAddressCollection

獲取包含此電子郵件的密件抄送(BCC)收件人的地址集合。

Attachments

AttachmentCollection

獲取用于存儲附加到此電子郵件的數據的附件集合。

Subject

string

獲取或設置此電子郵件的主題。

Body

string

獲取或設置郵件正文。

AlternateViews

AlternateViewCollection

指定一個電子郵件不同格式顯示的副本。(eg:發送HTML格式的郵件,可能希望同時提供郵件的純文本格式,以防止一些收件人使用的電子郵件閱讀程序無法顯示html內容)

IsBodyHtml

bool

默認false。獲取或設置指示郵件正文是否為Html格式的值。

Priority

MailPriority

默認Normal。獲取或設置此電子郵件的優先級。(Normal | Low| High)

SubjectEncoding

Encoding

獲取或設置此電子郵件的主題內容使用的編碼。

BodyEncoding

Encoding

獲取或設置用于郵件正文的編碼。

ReplyToList

MailAddressCollection

設置接收方回復郵件時默認的接收地址,eg:你用一個郵箱發信,但卻用另一個來收信。

(ReplyTo,表示單個回復地址,已過期,使用ReplyToList代替)

下面屬性想不到用在什么場景……請高人指出使用案例,謝謝!

DeliveryNotificationOptions

DeliveryNotificationOptions

默認None。獲取或設置此電子郵件的發送通知。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

不懂干嘛的,設置為OnSuccess,不會回復我發送成功。設置為Never,發送失敗也會回復我。。。

Headers

NameValueCollection

獲取與此電子郵件一起傳輸的電子郵件標頭。(什么時候需要自己去設置?)

HeadersEncoding

Encoding

獲取或設置此電子郵件的用戶定義的自定義標題使用的編碼。

2. SmtpClient類用于將電子郵件發送到 SMTP 服務器以便傳遞。

SmtpClient常用屬性

Host

string

獲取或設置用于SMTP事務的主機的名稱或IP地址。

Port

int

獲取或設置用于SMTP事務的端口。

UseDefaultCredentials

bool

默認false。

若要使用默認網絡憑據,可以將UseDefaultCredentials設置為true,此時System.Net.CredentialCache.DefaultCredentials(應用程序系統憑證)會隨請求一起發送。

如果UseDefaultCredentials屬性設置為false,則連接到服務器時會將Credentials屬性中設置的值用作憑據。如果UseDefaultCredentials屬性設置為false并且尚未設置Credentials屬性,則將郵件以匿名方式發送到服務器。若SMTP服務器要求在驗證客戶端的身份則會拋出異常。

Credentials

ICredentialsByHost

獲取或設置用于驗證發件人身份的憑據。

ClientCertificates

X509CertificateCollection

指定應該使用哪些證書來建立安全套接字層(SSL)連接。

EnableSsl

bool

默認false。指定SmtpClient是否使用安全套接字層(SSL)加密連接。

Timeout

int

默認100000.獲取或設置一個值,該值指定同步重載:SmtpClient.Send()調用的超時時間。

自建本地SMTP服務器獲取郵件時需要使用的屬性:

DeliveryMethod

SmtpDeliveryMethod

默認NetworkCredential。

?

1

2

3

4

5

6

7

8

9

10

PickupDirectoryLocation

string

獲取或設置文件夾,應用程序在該文件夾中保存將由本地SMTP服務器處理的郵件。

?

下面屬性想不到用在什么場景……請高人指出使用案例,謝謝!

TargetName

string

"SMTPSVC/" + this.host。獲取或設置在使用擴展保護時用于身份驗證的服務提供程序名稱(SPN)。

ServicePoint

ServicePoint

獲取用于傳輸電子郵件的網絡連接。(應該會保存TCP連接,避免再次進行TCP的三次握手???)

3. 一個簡單的郵件發送示例

MailMessage?mail?=?new?MailMessage(); ? mail.From?=?new?MailAddress(From,?FromDisplayName); ? mail.To.Add(new?MailAddress(To,?ToDisplayName)); ? mail.Subject?=?"this?is?a?test?email."; ? mail.Body?=?"this?is?my?test?email?body. this?part?is?in?bold"; ? mail.IsBodyHtml?=?true; ? SmtpClient?smtp?=?new?SmtpClient(host,?port); ? smtp.Credentials?=?new?NetworkCredential(userName,?password); ? smtp.Send(mail);?

4. 郵件擴展:如何發送內嵌資源(eg:圖片、mp3等等)

詳細請看:http://www.cnblogs.com/SkyD/archive/2009/05/11/1453868.html(斯克迪亞)

通過 ContentDisposition 類實現此功能,內嵌的資源只做為文件內容顯示,不再在附件列表中出現。ContentDisposition 類表示 MIME 協議 Content-Disposition 標頭。

對于文件附件,可以使用 ContentDisposition 的屬性來設置文件大小、文件的創建日期、上次讀取文件的日期以及上次修改文件的日期。對于所有附件,考慮到附件有可能會存儲到接收計算機上,可以設置一個建議的文件名。顯示電子郵件的軟件可以使用 ContentDisposition 中的信息,按發件人預期的方式呈現電子郵件附件。

通過 ContentDisposition 實例的Inline屬性實現郵件內嵌資源。如下:

1) 設置附件的ContentId屬性為一個自定義名稱。

2) 設置附件的ContentDisposition.Inline屬性為true。

3) 在郵件的HTML格式正文中以“cid:自定義名稱”的方式引用,比如ContentId設為“face”,那么正文中就以“cid:face”作為其URL路徑字符串的替代即可。

代碼如下:(詳細見示例代

網頁標題:分享net網站開發中郵件發送功能
文章分享:http://www.js-pz168.com/news21/226271.html

成都網站建設公司_創新互聯,為您提供企業建站Google外貿網站建設移動網站建設軟件開發靜態網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

商城網站建設
久久99久久人婷婷精品综合_超碰aⅴ人人做人人爽欧美_亚洲电影第三页_日韩欧美一中文字暮专区_波多野结衣的一区二区三区_婷婷在线播放_人人视频精品_国产精品日韩精品欧美精品_亚洲免费黄色_欧美性猛交xxxxxxxx
成人黄色大片在线观看| 影音先锋亚洲视频| 在线观看视频欧美| 久久亚洲精华国产精华液| 亚洲综合无码一区二区| 国内精品伊人久久久久影院对白| 999精品视频一区二区三区| 亚洲国产午夜伦理片大全在线观看网站| 欧美精品777| 亚洲青青青在线视频| 精一区二区三区| 好吊色欧美一区二区三区视频| 色婷婷国产精品久久包臀| 国产亚洲综合性久久久影院| 视频在线观看一区| 91在线观看美女| 色婷婷综合在线| 欧美国产日韩亚洲一区| 六月丁香婷婷久久| 国产在线一区二| 在线播放中文字幕一区| 亚洲另类一区二区| 高清beeg欧美| 亚洲日本理论电影| 久久久久久久久久久黄色| 日韩国产欧美在线播放| 成人av免费在线看| 欧美色图天堂网| 亚洲情趣在线观看| 成人av网站在线| 色综合夜色一区| 国产精品久久午夜| 国产丶欧美丶日本不卡视频| 奇米888一区二区三区| 精品欧美一区二区久久| 日韩成人免费在线| 国产一区二区久久久| 欧美一区二区私人影院日本| 亚洲综合男人的天堂| 2020国产精品久久精品不卡| 欧洲精品一区二区| 亚洲精品日日夜夜| 91影视在线播放| 欧美日韩高清在线播放| 亚洲国产乱码最新视频 | 亚洲精品水蜜桃| 懂色av一区二区三区免费看| 色婷婷av一区| 亚洲精品免费电影| 草莓视频一区| 日韩欧美一区二区在线视频| 日韩中文字幕av电影| 九色综合婷婷综合| 久久综合九色欧美综合狠狠| 久久99日本精品| 婷婷久久青草热一区二区| 中文子幕无线码一区tr| 成人午夜精品一区二区三区| 在线免费不卡电影| 亚洲午夜久久久久久久久电影院| 不卡一卡2卡3卡4卡精品在| 日韩欧美色综合网站| 老司机精品视频一区二区三区| 色狠狠久久av五月综合| 中文字幕制服丝袜成人av| 97超碰欧美中文字幕| 67194成人在线观看| 青草国产精品久久久久久| 色噜噜色狠狠狠狠狠综合色一| 国产精品三级视频| 91在线观看视频| 日韩精品一区二区三区中文不卡| 精品一区二区三区日韩| 亚洲成人网上| 樱桃视频在线观看一区| 精品国产乱码久久久久久蜜柚| 久久蜜桃av一区二区天堂| 丰满白嫩尤物一区二区| 69成人精品免费视频| 久久草av在线| 91国产视频在线观看| 香港成人在线视频| 日本在线观看不卡| 一区二区三区影院| 久久爱av电影| 综合久久久久综合| 精品伦理一区二区三区| 国产精品天美传媒| 91黄色精品| 久久午夜羞羞影院免费观看| jizz一区二区| 精品国产一区二区三区忘忧草| 国产99久久久国产精品 | 国内成人自拍视频| 欧美亚洲日本国产| 看电影不卡的网站| 欧美中文字幕一区二区三区| 免费成人你懂的| 欧美在线你懂的| 久久精品国产亚洲高清剧情介绍| 在线免费观看日本欧美| 久久国产精品第一页| 欧美视频一区二区三区四区| 久久成人麻豆午夜电影| 欧美系列亚洲系列| 韩国一区二区在线观看| 在线不卡中文字幕| 成人午夜看片网址| 久久亚洲综合色一区二区三区| 91日韩在线专区| 国产精品三级电影| 久久天天狠狠| 亚洲一区日韩精品中文字幕| 日韩欧美99| 视频在线在亚洲| 欧洲视频一区二区| 国产精品中文字幕一区二区三区| 91精品一区二区三区在线观看| 国产成人精品亚洲日本在线桃色 | 中文字幕中文字幕一区| 久久涩涩网站| 亚洲一区二区三区四区的| 一区二区三区四区| 久久精品国产澳门| 欧美一区二区二区| 91日韩在线专区| 1024成人网色www| 水蜜桃一区二区三区| 免费成人在线观看| 欧美妇女性影城| 99久久er热在这里只有精品15 | 欧美日产在线观看| 国产1区2区3区精品美女| 久久久国产午夜精品| 精品欧美一区二区三区久久久| 亚洲综合色丁香婷婷六月图片| 色噜噜狠狠色综合中国| 国产乱码一区二区三区| 久久久久久久久久电影| 国产综合动作在线观看| 亚洲成a人片在线观看中文| 欧美手机在线视频| av中文字幕不卡| 自拍视频在线观看一区二区| 亚洲天堂电影网| 国产在线不卡一区| 久久嫩草精品久久久久| 欧美污视频久久久| 久久精品国产久精国产| 毛片不卡一区二区| 欧洲一区在线观看| 不卡视频一二三| 成人免费小视频| 在线观看成人av电影| 国产iv一区二区三区| 欧美经典三级视频一区二区三区| 日韩不卡av| 国产一区二区三区在线观看免费| 久久精品在线观看| 日韩av高清| 国产美女在线精品| 国产精品丝袜久久久久久app| 亚洲欧美日韩精品综合在线观看| 国产乱码精品一区二区三区忘忧草 | 奇米影视一区二区三区小说| 精品国产一区二区三区不卡| 欧美精品一区二区三区在线四季 | 国产91精品入口17c| 日韩有码一区二区三区| 日韩手机在线导航| 美女视频久久| 国产呦萝稀缺另类资源| 国产精品天天看| 在线观看亚洲一区| www.久久久| 青青草97国产精品免费观看无弹窗版| 精品久久久久99| 五月天丁香综合久久国产| 国产高清成人在线| 伊人色综合久久天天人手人婷| 欧美日韩黄色一区二区| 国产日韩欧美精品| 激情欧美日韩一区二区| 国产精品国产三级国产有无不卡| 在线观看日韩电影| 国产精品 日韩| 经典一区二区三区| 亚洲品质自拍视频网站| 欧美一区二区视频观看视频| 免费看成人片| 成人免费va视频| 性欧美大战久久久久久久久| 2021中文字幕一区亚洲| 色综合天天性综合| 国产福利久久| 国产一区二区三区黄视频 | 国产成人免费9x9x人网站视频| 亚洲另类色综合网站| 日韩免费高清av| 亚洲精品一区二区三区樱花 |