网际网路程式设计课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《网际网路程式设计课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网际 网路 程式 设计 课件
- 资源描述:
-
1、Visual Basic 2005網際網路程式設計Chpater 99-1 POP3介紹nSMTP用以傳送郵件的通訊協定,其外寄郵件伺服器(Outgoing Mail Server)的預設通訊埠為25,而POP3(Post Office Protocol version 3)則是用以接收郵件的通訊協定,其內送郵件伺服器(Incoming Mail Server)的預設通訊埠為110。n在流程的處理上,與SMTP通訊協定最大的不同在於,SMTP嚴格來說,只有郵件交易(Transaction)過程,並沒有使用者認證(Authorization)的過程,也就是說使用SMTP傳送郵件時,並不需要使用者
2、帳號及密碼,便可透過具有SMTP服務的郵件伺服器,傳送郵件。n但POP3則不同,若接收郵件時,不需要使用者帳號及密碼的確認,那麼不是任何人都可以讀取別人的郵件了嗎?因此,Client端透過POP3通訊協定至郵件伺服器讀取郵件時,必須經過使用者認證(Authorization)過程,方可取得郵件。nPOP3的流程共分為以下三個階段:1.AUTHORIZATION:使用者認證。2.TRANSACTION:處理郵件交易。3.UPDATE:依據TRANSACTION流程之定義,更新郵件信箱。n以下為收件端連結至郵件伺服器收取郵件過程的內容,為區別起見,在每一行的起頭加上“S:”與“C:”,以代表Ser
3、ver端與Client端之訊息。(Connection)C:Trying to connect to host .tw,port:110C:Connecting to .tw,port:110S:+OK hello from popgate(AUTHORIZATION)C:USER leohkkimoS:+OK password required.C:PASS passwordS:+OK maildrop ready,9 messages(148129 octets)(1095572 10485760)(TRANSACTION)C:STAT S:+OK 9 148129 C:RETR 1 S:
4、+OK 548 octets S:Date:Thu,03 May 2001 16:34:27 CST S:From:Leo Huang S:Reply-To:Leo Huang S:Subject:POP3 Mail via SocketS:To:.twS:MIME-Version:1.0S:Content-Transfer-Encoding:8bitS:Content-Type:text/plain;charset=Big5S:Message-ID:S:S:This is an example to receive the mail S:based on POP3 protocol.S:Le
5、oS:S:.C:RETR 2S:+OK 4906 octetsS:.(AUTHORIZATION/UPDATE)C:QUITS:+OK dewey POP3 server signing offn不論是那一個階段,RFC均定義了Client所傳送指令的格式以及Server端回應之內容,與SMTP相比較,POP3的指令內容則較為簡單,分別為:1.Client端所傳送的指令,必須CRLF為結尾。2.Server端所回應的訊息不似SMTP之複雜(不含三碼數字),只有兩種情況:+OK:代表指令執行正確。-ERR:代表指令執行錯誤。除此之外,在POP3每一階段中,均有相對的指令應用。9-1-1AUTHO
6、RIZATIONn在AUTHORIZATION(使用者認證)階段中,共有以下幾種Client端指令:指令指令語法語法USERUSER PASSPASS QUITQUITn此階段的流程分別為:1.首先Client需與POP3郵件伺服器建立通訊連結,待連結建立後,伺服端會回傳以下之訊息,接著便需處理使用者認證程序:+OK hello from popgate+OK hello from popgate2.在認證程序中,首先Client端以USER指令傳送使用者在POP3郵件伺服器上所註冊的登錄帳號,以確認使用者身份,若帳號存在,Server端會回傳+OK之訊息,否則回傳-ERR訊息,以下是USER
7、指令的處理範例:USER leohuangUSER leohuang+OK password required.+OK password required.USER abcdUSER abcd-ERR invalid user.-ERR invalid user.3.待登錄帳號確認後,Client端需以PASS指令傳送此登錄帳號之密碼,同樣地,若密碼正確,Server端會回傳+OK之訊息,否則回傳-ERR訊息,以下是PASS指令的處理範例。待密碼確認後,便可開始處理郵件接收的交易(Transaction):PASS password+OK maildrop ready,9 messages(1
8、48129 octets)(1095572 10485760)PASS abcd-ERR invalid password4.AUTHORIZATION階段的最後一個指令則是QUIT(註),當郵件交易處理完畢時,Client端便發送QUIT指令至郵件伺服器中斷連結,以下是QUIT指令的處理範例:QUIT+OK dewey POP3 server signing offn下圖為AUTHORIZATION階段的流程整理:9-1-2TRANSACTIONn在TRANSACTION(郵件交易)階段中,共有以下幾種Client端指令:指令指令語法語法STATSTATLISTLIST mail#RETRR
9、ETR DELEDELENOOPNOOPRSETRSET1.STAT:說明郵件交易的開始,Client端會傳送STAT指令至郵件伺服器,以便瞭解使用者信箱(INBOX)中郵件數目及大小,其中第一碼數字代表郵件數目,第二碼代表所有郵件的大小,其單位為octet(八位元組),例如:STAT+OK 9 1481292.LIST:LIST指令有兩種功能,若沒有參數,代表依序列出每一封郵件的大小(單位為octet)。若希望瞭解某一封郵件的大小,則以郵件序號為LIST指令的參數,需注意的是,郵件序號是由1開始,例如:LIST+OK 2 messages(320 octets)1 1202 200.LIST
10、 2+OK 2 200LIST 3-ERR no such message,only 2 messages in maildrop3)RETR:為Retrieve(取得)的縮寫,用以取得郵件內文,包括郵件標題(Header)及郵件內容(Content)。若指令執行成功,Server端會先回傳+OK訊息,告知Client端此郵件大小(單位為octet),接著則依序傳送郵件標題及內容。如何判斷標題、內容及郵件結尾呢?POP3通訊協定在傳送郵件內文時,是依下圖的順序傳送標題與內容,其中標題與內容之間會以空行隔開,並以.CRLF(.rn)為郵件結尾。致於標題中各行的順序,則會依郵件伺服器的不同而有所差
11、異,以下為RETR指令的範例:RETR 1+OK 548 octets Date:Thu,03 May 2001 16:34:27 CST From:Leo Huang Reply-To:Leo Huang Subject:POP3 Mail via Socket To:.tw MIME-Version:1.0 Content-Transfer-Encoding:8bit Content-Type:text/plain;charset=Big5 Message-ID:This is an example to receive the mail based on POP3 protocol.Le
12、o 4.DELE:為Delete(刪除)的縮寫,用以刪除郵件。執行本指令,只是註記(Mark)郵件已被刪除,但實際上,並未真正自郵件信箱中永久移除,必須等到執行QUIT指令,Client端與Server端結束連結時,才會真正地永久移除,因此郵件軟體通常會在執行結束時,詢問使用者確認刪除的動作。以下為DELE指令的範例:DELE 1+OK message 1 deletedDELE 1-ERR message 1 already deleted5.NOOP:為No Operation的縮寫,執行此指令,Server端僅會回傳+OK的訊息。6.RSET:用以取消被註記刪除的郵件,例如:DELE 1
13、+OK message 1 deletedRSET+OK maildrop has 2 messages(320 octets)除了上述指令之外,有些POP3伺服器也支援TOP指令。7.TOP:用以回傳郵件標題及指定行數的內容,其語法為:TOP line#其中:mail#:代表郵件序號,此郵件序號不能被註記為刪除。line#:回傳郵件內容(Content)的行數。例如:TOP 1 0+OK 548 octetsDate:Thu,03 May 2001 16:34:27 CST From:Leo Huang Reply-To:Leo Huang Subject:POP3 Mail via Soc
展开阅读全文