Pop3协议的原理
来源:互联网 发布:马斯洛安全感测试知乎 编辑:程序博客网 时间:2024/04/28 18:54
这几天搞pop3接受邮件,现在困在邮件解码这里,不过还顺便总结下心得
(1) POP3命令由一个命令和一些参数组成。所有命令以一个CRLF对结束
(2) 命令和参数由可打印的ASCII字符组成,它们之间由空格间隔 如user username(注意,连上去后,有时要大写USER,有时要小写user)
(3) POP3响应由一个状态码("确定" ("+OK")和"失败" ("-ERR")) 和一个可能跟有附加信息的命令组成。所有响应也是由CRLF对结束
(4) 如果有附加信息时,当所有信息发送结束时,发送最后一行,包括一个结束字符(十进制码46,也就是".")和一个CRLF对。
(5) 在POP3协议中有三种状态,认可状态,处理状态,和更新状态。
当客户机与服务器建立联系时,一旦客户机提供了自己身份并成功确认,即由认可状态转入处理状态,在完成相应的操作后客户机发出QUIT命令,则进入更新状态,更新之后最后重返认可状态。如下图
等待连接 身份确认 QUIT命令
—— |认可|————— |处理|——————|更新|
|__________________________________|
重返认可状态
客户端可用命令列表
客户可以发出的命令列表以及含义,源自ChinaUnix
命令 参数 状态 描述
------------------------------------------------------------------------------------------------------------------------------
USER username 认可 此命令与下面的pass命令若成功,将导致状态转换
PASS password 认可
APOP Name,Digest 认可 Digest是MD5消息摘要,windows系统多不支持
------------------------------------------ -----------------------------------------------------------------------------------
STAT None 处理 请求服务器发回关于邮箱的统计资料,如邮件总数和总字节数
UIDL [Msg#] 处理 返回邮件的唯一标识符,POP3会话的每个标识符都将是唯一的
LIST [Msg#] 处理 返回邮件数量和每个邮件的大小
RETR [Msg#] 处理 返回由参数标识的邮件的全部文本
DELE [Msg#] 处理 服务器将由参数标识的邮件标记为删除,由quit命令执行
RSET None 处理 服务器将重置所有标记为删除的邮件,用于撤消DELE命令
TOP [Msg#] 处理 服务器将返回由参数标识的邮件前n行内容,n必须是正整数
NOOP None 处理 服务器返回一个肯定的响应
------------------------------------------------------------------------------------------------------------------------------
QUIT None 更新
先打开telnet,输入open pop3.126.com 110进入126的服务器,试试上面的命令,建立对这些命令的初步认识。
剩下的就是基本的网络编程了
- Pop3协议的原理
- SMTP、POP3协议的命令
- 邮箱系统原理——POP3协议和IMAP协议
- 了解POP3协议,使用简单的代码监控pop3邮箱
- 了解POP3协议,使用简单的代码监控pop3邮箱
- POP3协议
- pop3协议
- POP3协议
- POP3协议
- pop3协议
- POP3协议
- pop3协议
- 发布自己写的Pop3协议组件
- 一个POP3协议的封装类
- POP3协议判断新邮件的思路
- 雅虎邮箱开通POP3协议的方法
- POP3邮局协议的一些命令
- pop3和imap协议的区别
- It时评:博客网的裁员
- VC6命令行编译工程方法
- 央行小额支付系统!
- [原创]递归应用-遍历所有下层分类
- Qt调试技术
- Pop3协议的原理
- 少女的初夜
- 6,VC里一些容易混淆的地方(转自VCMFC的BLOG)
- How To Install On Debian with Several Codecs
- 音箱选购基础知识
- 电影无极下载地址(HTTP下载)
- 母爱无边
- C# 学习笔记 -- 第六天 正规表达式
- 今天终于把程序运行起来了,高兴!