POP3

Email协议包括两部分,一部分是发送Email的协议,一般是smtp协议;另一部分是接收Email的协议,常见的有POP3协议和imap协议。现讨论接收Email的POP3协议

POP3_第1张图片
pop3状态转移图

一个例子:

C:telnet pop3.126.com 110   /* 以telnet方式连接126邮件服务器 */

S:+OK Welcome to coremail Mail Pop3 Server (126coms[3adb99eb4207ae5256632eecb8f
8b4855]) /* +OK,代表命令成功,其后的信息则随服务器的不同而不 */

C:USER bripengandre /* 采用明文认证 */

S:+OK core mail

C:PASS Pop3world /* 发送邮箱密码 */

S:+OK 654 message(s) [30930370 byte(s)] /* 认证成功,转入处理状态 */

C:LIST 1 /* 显示第一封邮件的信息 */

S:+OK 1 5184 ./* 第一封邮件的大小为5184 字节 */

C:UIDL 1 /* 返回第一封邮件的唯一标识符 */

S:+OK 1 1tbisBsHaEX9byI9EQAAsd /* 数字1 后的长字符串就是第一封邮件的唯一标志符 */

C:RETR 1 /* 下载第一封邮件 */

S:+OK 5184 octets /* 第一封邮件的大小为5184字节 */

S:Receive

…  /* 第一封邮件的具体内容 */

S:…

C:QUIT /* 转入更新状态,接着再转入认证状态 */

S:+OK

C: QUIT /* 退出连接 */

S:+OK core mail /* 成功地退出了连接 */

响应则由“+OK”或“-ERR”开头,后跟一些可读的说明和一些其它参数(对RETR,这个参数就是邮件的内容)


常用命令:

  • USER
    username 认可此命令与下面的pass命令若成功,将导致状态转换

  • PASS
    password 认可

  • APOP
    Name,Digest 认可 Digest是MD5消息摘要

  • STAT
    None 处理请求服务器发回关于邮箱的统计资料,如邮件总数和总字节数

  • UIDL [Msg#] 处理返回邮件的唯一标识符,POP3会话的每个标识符都将是唯一的

  • LIST [Msg#]
    处理 返回邮件数量和每个邮件的大小

  • RETR [Msg#]
    处理 返回由参数标识的邮件的全部文本

  • DELE [Msg#]
    处理服务器将由参数标识的邮件标记为删除,由quit命令执行

  • RSET None
    处理服务器将重置所有标记为删除的邮件,用于撤消DELE命令

  • TOP [Msg#]
    处理服务器将返回由参数标识的邮件前n行内容,n必须是正整数

  • NOOP None
    处理 服务器返回一个肯定的响应

POP3_第2张图片

你可能感兴趣的:(POP3)