• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      支持多國語郵件地址的電子郵件服務(wù)器的設(shè)計與實現(xiàn)

      2020-09-10 17:24:09祝宇杰
      關(guān)鍵詞:電子郵件

      祝宇杰

      摘要:電子郵件是在互聯(lián)網(wǎng)上出現(xiàn)最早的服務(wù)之一,最初的電子郵件只能收發(fā)一些簡單的文字信息,整個電子郵件系統(tǒng)并沒有得到更多的重視。但是隨著互聯(lián)網(wǎng)的快速發(fā)展和網(wǎng)絡(luò)用戶成倍的增加,電子郵件開始被廣泛的使用。論文研究開發(fā)出可以支持多國語郵件地址的電子郵件服務(wù)器,讓不同語言和不同文字的用戶之間能夠更加便利的使用電子郵件。整個開發(fā)過程選擇在Windows7 64位操作系統(tǒng)上采用JAVA語言來編寫SMTP服務(wù)器以及對應(yīng)的發(fā)信客戶端,使用hMailServer來搭建基礎(chǔ)的郵件服務(wù)器。運(yùn)用各種工具和開源庫來實現(xiàn)支持多國語郵件地址的電子郵件服務(wù)器。

      關(guān)鍵詞:電子郵件;? JAVA; SMTP; hMailServer

      一、 概述

      (一)、電子郵件的基礎(chǔ)介紹

      電子郵件又可以稱呼為emali或者E-mail,它指得是通過網(wǎng)絡(luò)傳輸來實現(xiàn)信息收發(fā)的一種服務(wù),而這種服務(wù)需要兩個或者更多的用戶來完成。internet最為基本的一項功能就是電子郵件,它可以有效地進(jìn)行電子化的數(shù)據(jù)異地交換[1]。

      (二)、電子郵件現(xiàn)狀

      伴隨著互聯(lián)網(wǎng)的不斷發(fā)展,電子郵件的應(yīng)用也在不斷的發(fā)展,越來越多的人使用電子郵件進(jìn)行收發(fā)信息。在中國大部分人群的英語水平都是有限的,而電子郵件地址又只能是以英文作為域名大大的增加了語言障礙[2]。

      二、基礎(chǔ)技術(shù)研究

      (一)、電子郵件地址結(jié)構(gòu)

      電子郵件的地址由3部分組成:用戶標(biāo)識符(USER)+“@”符號+域名。第一部分的用戶標(biāo)識符(USER)代表了用戶郵箱的賬戶號。第二部分的“@”符號是分隔符,“@”代表的是英文“at”的意思,意為“在”。@左邊的部分就是用戶標(biāo)識符,右邊的部分是域名。第三部分是用戶郵件接收服務(wù)器的域名標(biāo)識符,用以表示其所在的位置,也是郵件要投遞到的目的地服務(wù)器的域名。

      (二)、主要的傳輸協(xié)議

      在互聯(lián)網(wǎng)世界里信息的傳輸是根據(jù)具體的協(xié)議來進(jìn)行的,郵件的傳輸也不例外,也是根據(jù)既定的協(xié)議來通信的,基于標(biāo)準(zhǔn)的通信協(xié)議。其中最重要的通信協(xié)議就是SMTP協(xié)議、POP3協(xié)議以及IMAP協(xié)議[3]。

      三 需求分析與設(shè)計

      (一)、支持多國語郵件地址的服務(wù)器的需求分析

      要實現(xiàn)郵件地址支持非英文(多國語)的情況,也就是需要將非英文的郵件地址的字符串轉(zhuǎn)化成能夠傳輸?shù)牟⑶亦]件服務(wù)器支持的編碼形式的字符串。在這種情況下本課題參考了RFC5335、RFC5336、RFC5337、RFC6531和RFC6533所定義的內(nèi)容(后文將這5個RFC文件合稱之為“SMTPUTF8相關(guān)RFC文件”),現(xiàn)有的協(xié)議僅僅支持傳輸帶有UTF-8編碼的郵件地址。據(jù)此,采用僅支持以UTF-8編碼的多國語言郵件地址來收發(fā)電子郵件的形式作為實現(xiàn)結(jié)果的方式。

      (二)、系統(tǒng)整體架構(gòu)設(shè)計

      使用hMailServer來搭建基礎(chǔ)的郵件系統(tǒng)并獨(dú)立開發(fā)一個支持多國語(UTF-8)的SMTP服務(wù)器,再使用COM庫來串聯(lián)獨(dú)立的SMTP服務(wù)器到hMailServer上與其他的功能整合成一套完整的郵件系統(tǒng)。

      四、開發(fā)與實現(xiàn)

      (一)、開發(fā)環(huán)境和工具

      選擇在Windows系統(tǒng)上采用JAVA語言來編寫SMTP服務(wù)器以及對應(yīng)的發(fā)信客戶端,使用的集成開發(fā)環(huán)境(Integrated Development Environment)是Eclipse。第三方庫為JACOB(Java COM Bridge),基礎(chǔ)郵件系統(tǒng)搭建工具為hMailServer,IMAP客戶端為Foxmail。

      (二)、基于hMailServer的基礎(chǔ)郵件服務(wù)器搭建

      使用hMailServer來搭建基礎(chǔ)的郵件服務(wù)器,在官網(wǎng)上下載最新的5.6.7版本安裝即可。首先是添加域名為“l(fā)ocalhost.com”,然后建立三個普通郵件賬戶分別是“abc@localhost.com”和“def@localhost.com”以及“ghi@localhost.com”,大小可以不設(shè)置,密碼使用簡單的1到6即可。同時通過設(shè)置Aliases(別名)的方式來創(chuàng)建中文郵件地址(UTF-8多國語)的賬戶:將“def@localhost.com”的Aliases賬戶設(shè)置為“四川大學(xué)@localhost.com”;將“ghi@localhost.com”的Aliases賬戶設(shè)置為“成都@localhost.com”即可。這樣設(shè)置后往“四川大學(xué)@localhost.com”的地址發(fā)送郵件也就相當(dāng)于發(fā)送郵件給“def@localhost.com”。不過這兩者之間的郵件傳遞是由hMailServer程序本身實現(xiàn)的。在網(wǎng)路上仍可視“四川大學(xué)@localhost.com”為一個獨(dú)立的郵件地址。能夠這樣模擬生成非英文郵件地址的功能也是選擇使用hMailServer的一個原因。接下來需要設(shè)置hMailServer自帶的本地SMTP服務(wù)器。在Settings里可找到Protocols下的SMTP設(shè)置,在第二頁Delivery of e-mail里添加本地主機(jī)名(local host name)為 “smtp. localhost.com”,其他設(shè)置沿用默認(rèn)的即可。最后,需要在本地IP限制的選項里打開本地收發(fā)信相關(guān)的SMTP許可,方法是在Advanced設(shè)置里找到并打開IP Ranges,將“My Computer”和“Internet”選項里右下角的關(guān)于“Require SMTP authentication”的選項全部勾上并保存即可。通過以上設(shè)置并保存后,本地的基礎(chǔ)郵件服務(wù)器就搭建完成了。

      (三)、支持UTF-8郵件地址的SMTP服務(wù)器的實現(xiàn)

      實現(xiàn)支持UTF-8郵件地址的SMTP服務(wù)器首先要滿足基本的SMTP郵件服務(wù)器的功能。即,對收到的命令進(jìn)行處理,主要包括EHLO、MAIL、RCPT、DATA、“.”、QUIT、RSET、NOOP、“Unrecognized command / data”等命令。同時,在業(yè)務(wù)邏輯外部需要啟用一個socket來監(jiān)聽端口25上收到的消息,并根據(jù)消息內(nèi)容進(jìn)行相關(guān)業(yè)務(wù)處理。

      在類HmailServer中需要定義一個COM組件對象用以傳遞郵件信息給hMailServer,此后,使用JACOB的API來傳遞收發(fā)件人地址、郵件內(nèi)容等對象并保存在hMailServer中。

      在類SimpleSmtpServer中,需要定義一個socket事件用于監(jiān)聽端口25,同時定義其輸入、輸出流對象并處理事件的結(jié)束和異常關(guān)閉的情況。

      在SmtpMessage這個類中需要完成對郵件信頭和主體的處理,包括對郵件地址的解碼處理。首先聲明各命令對象,主要是MAIL和RCPT,此外還有郵件內(nèi)容和信頭部分。

      SmtpRequest類主要功能是處理各種命令的業(yè)務(wù)并且返回對應(yīng)的命令,根據(jù)狀態(tài)值來處理SmtpRequest類返回的具體內(nèi)容,只涉及三個郵件主體部分。分別是:發(fā)信人地址(Mail)、收信人地址(RCPT)以及郵件內(nèi)容(DATA),同時在處理主體時對郵件地址進(jìn)行解碼。最后,在SmtpState這個類中聲明各種命令和狀態(tài)碼并調(diào)用,此外也使用函數(shù)來處理命令語與對應(yīng)的字符串。

      以上就是支持UTF-8編碼格式郵件地址的SMTP服務(wù)器以及整個開發(fā)實現(xiàn)過程。

      五、測試結(jié)果

      (一)、系統(tǒng)運(yùn)行

      由于整個郵件系統(tǒng)是由獨(dú)立的SMTP服務(wù)器和hMailServer的剩余功能組成,所以需要同時運(yùn)行這兩部分的程序進(jìn)程。在IDE(Eclipse)中執(zhí)行SimpleSmtpServer這個類就啟用了SMTP服務(wù)器。但是由于hMailServer自帶有SMTP服務(wù)器,為防止沖突,需要將hMailServer的SMTP服務(wù)器功能關(guān)閉。在IDE里執(zhí)行SimpleSmtpServer類后檢查Windows的后臺進(jìn)程,確認(rèn)“hMailServer.exe *32”存在就說明整個支持多國語郵件地址的郵件服務(wù)器就在運(yùn)行之中了。接來下需要配置IMAP客戶端,完成了Foxmail的安裝和賬戶設(shè)置后就可以進(jìn)入測試。

      (二)、測試

      從郵件地址為“四川大學(xué)@localhost.com”的郵箱發(fā)送一封電子郵件到地址為“def@localhost.com”的郵箱,發(fā)送接收成功。

      從郵件地址為“四川大學(xué)@localhost.com”的郵箱發(fā)送一封電子郵件到地址為“成都@localhost.com”的郵箱,發(fā)送接收成功。

      六、結(jié)論

      如今被互聯(lián)網(wǎng)覆蓋的區(qū)域越來越多,網(wǎng)絡(luò)用戶的不斷增加,互聯(lián)網(wǎng)應(yīng)用的使用也在不斷的增加。作為互聯(lián)網(wǎng)應(yīng)用之一的電子郵件從最初的簡單收發(fā)信息到現(xiàn)在的各種各樣的功能,整個電子郵件系統(tǒng)在不斷的更新與進(jìn)步。論文設(shè)計了支持多國語郵件地址的電子郵件服務(wù)器,采用了通過轉(zhuǎn)化UTF-8編碼為BASE64編碼的形式來實現(xiàn)UTF-8的多國語郵件地址的SMTP服務(wù)器,結(jié)合使用開源的hMailServer所搭建的基礎(chǔ)郵件服務(wù)器進(jìn)而實現(xiàn)整個郵件服務(wù)器的搭建。課題從電子郵件的概念和相關(guān)基礎(chǔ)知識的學(xué)習(xí)和研究開始逐步轉(zhuǎn)進(jìn)到技術(shù)和代碼層面,完成了設(shè)計、開發(fā)與實現(xiàn)的過程,最終實現(xiàn)了預(yù)期的目的。

      參考文獻(xiàn):

      [1] 劉宴兵,李春.使用SMTP實現(xiàn)郵件發(fā)送設(shè)計[J].計算機(jī)工程與應(yīng)用,2002(08):142-144.

      [2] 張京鵬,胡安廷.基于中文域名的郵件系統(tǒng)研究[J].計算機(jī)系統(tǒng)應(yīng)用,2007(07):45-48+53.

      [3] 朱健,盧秉亮,王盛明,甄雷.郵件發(fā)送客戶端SMTP協(xié)議的實現(xiàn)[J].微處理機(jī),2008(01):100-102+106.

      猜你喜歡
      電子郵件
      有關(guān)旅行計劃的電子郵件
      民事訴訟電子郵件送達(dá)制度的司法適用
      小測試:你對電子郵件上癮了嗎?
      海外英語(2013年9期)2013-12-11 09:03:36
      有獎問答
      有獎問答
      用PDA無線收發(fā)電子郵件
      電子世界(2004年5期)2004-07-26 23:54:30
      淮滨县| 犍为县| 渑池县| 南乐县| 三门峡市| 邮箱| 丘北县| 台中县| 三原县| 大石桥市| 疏勒县| 翼城县| 宾川县| 永靖县| 科尔| 临武县| 如东县| 二手房| 沛县| 高州市| 海宁市| 行唐县| 苗栗县| 新密市| 从江县| 应城市| 伊宁县| 崇义县| 唐河县| 壤塘县| 兴海县| 五河县| 建平县| 防城港市| 云和县| 河源市| 双牌县| 宁国市| 温宿县| 西宁市| 克山县|