收发邮件基本命令和运用

来源:互联网 发布:广告牌制作软件下载 编辑:程序博客网 时间:2024/06/05 14:26

毕设做了邮件客户端程序

在.net中提供了发送邮件的类库,但没有接收邮件的相关类库,不知道为什么,通过不断研究个人对收取邮件有了一定的了解,并自写了邮件收取的POP3程序,主要有些小结:

通过DOS命令收取或查看邮件信息:

登陆:telnet 服务器名 110

user "用户名"      ——验证用户名

pass “密码" (如果不想被旁边的人看到,最好取消回显)    ——验证密码

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

登陆成功后,可使用POP3命令:
STAT      None    ——请求服务器发回关于邮箱的统计资料,如邮件总数和总字节数
UIDL      n   ——返回邮件的唯一标识符,POP3会话的每个标识符都将是唯一的
LIST    n   ——返回邮件数量和每个邮件的大小
RETR    n     ——返回由参数标识的邮件的全部文本
DELE    n            ——服务器将由参数标识的邮件标记为删除,由quit命令执行
RSET                  ——服务器将重置所有标记为删除的邮件,用于撤消DELE命令
TOP       m,   n    ——服务器将返回由参数标识的邮件前n行内容,n必须是正整数
NOOP   None ——服务器返回一个肯定的响应
QUIT  None ——更新    

更多说明:

  首先遇到的第一个问题是:如何知道那些邮件是新邮件,是不是要对每一封邮件进行比较,怎么比较,是通过时间吗?这个问题比较棘手,没有什么好的办法,后来发现一个方法,也是比较,但相对简单一些,就是通过每封邮件的UID,将已有的UID存入一个哈希表中,以后在检索UID是否存在即可。

第二个问题,如何只提取文件头,通过top 命令,top m,n是获取第m封邮件的前n行内容,如果将n设为0,即可提取文件头

原创粉丝点击