Email協(xié)議包括兩部分,一部分是發(fā)送Email的協(xié)議,一般是smtp協(xié)議;另一部分是接收Email的協(xié)議,常見的有POP3協(xié)議和imap協(xié)議?,F(xiàn)討論接收Email的POP3協(xié)議
pop3狀態(tài)轉(zhuǎn)移圖
一個例子:
C:telnet pop3.126.com 110 /* 以telnet方式連接126郵件服務(wù)器 */
S:+OK Welcome to coremail Mail Pop3 Server (126coms[3adb99eb4207ae5256632eecb8f
8b4855]) /* +OK,代表命令成功,其后的信息則隨服務(wù)器的不同而不 */
C:USER bripengandre /* 采用明文認證 */
S:+OK core mail
C:PASS Pop3world /* 發(fā)送郵箱密碼 */
S:+OK 654 message(s) [30930370 byte(s)] /* 認證成功,轉(zhuǎn)入處理狀態(tài) */
C:LIST 1 /* 顯示第一封郵件的信息 */
S:+OK 1 5184 ./* 第一封郵件的大小為5184 字節(jié) */
C:UIDL 1 /* 返回第一封郵件的唯一標識符 */
S:+OK 1 1tbisBsHaEX9byI9EQAAsd /* 數(shù)字1 后的長字符串就是第一封郵件的唯一標志符 */
C:RETR 1 /* 下載第一封郵件 */
S:+OK 5184 octets /* 第一封郵件的大小為5184字節(jié) */
S:Receive
… /* 第一封郵件的具體內(nèi)容 */
S:…
C:QUIT /* 轉(zhuǎn)入更新狀態(tài),接著再轉(zhuǎn)入認證狀態(tài) */
S:+OK
C: QUIT /* 退出連接 */
S:+OK core mail /* 成功地退出了連接 */
響應(yīng)則由“+OK”或“-ERR”開頭,后跟一些可讀的說明和一些其它參數(shù)(對RETR,這個參數(shù)就是郵件的內(nèi)容)
常用命令:
USER
username 認可此命令與下面的pass命令若成功,將導致狀態(tài)轉(zhuǎn)換PASS
password 認可APOP
Name,Digest 認可 Digest是MD5消息摘要STAT
None 處理請求服務(wù)器發(fā)回關(guān)于郵箱的統(tǒng)計資料,如郵件總數(shù)和總字節(jié)數(shù)UIDL [Msg#] 處理返回郵件的唯一標識符,POP3會話的每個標識符都將是唯一的
LIST [Msg#]
處理 返回郵件數(shù)量和每個郵件的大小RETR [Msg#]
處理 返回由參數(shù)標識的郵件的全部文本DELE [Msg#]
處理服務(wù)器將由參數(shù)標識的郵件標記為刪除,由quit命令執(zhí)行RSET None
處理服務(wù)器將重置所有標記為刪除的郵件,用于撤消DELE命令TOP [Msg#]
處理服務(wù)器將返回由參數(shù)標識的郵件前n行內(nèi)容,n必須是正整數(shù)NOOP None
處理 服務(wù)器返回一個肯定的響應(yīng)
