邮件IMAP和POP协议扫盲

今天先来简单的总结一下IMAP指令。
先来扫扫盲神马是IMAP,我觉得wiki的解释是最贴近的,先来看看定义: https://zh.wikipedia.org/wiki/IMAP

当谈及协议时我一般学习的步骤是这样的:

  • wiki一下定义(主要是应用领域、历史等)
  • 看一下是否是标准协议,如果是看一下RFC定义(这也是了解协议的必须步骤)
  • 最后看一下标准的实现(比如:IMAP我就抓了一大堆OUTLOOK交互包,分析协议内容)

POP3协议的指令集:

USER、PASS、LIST、STAT、UIDL、RETR、TOP、RSET、DELE、NOOP、QUIT、APOP

IMAP协议的指令集:

CAPABILITY、NOOP、LOGOUT、STARTTLS、AUTHENTICATE、LOGIN、SELECT、EXAMINE、CREATE、DELETE、RENAME、SUBSCRIBE、UNSUBSCRIBE、LIST、LSUB、STATUS、APPEND、CHECK、CLOSE、EXPUNGE、SEARCH、FETCH、STORE、COPY、UID

看到了IMAP指令比POP3多出很多,当然这也是因为IMAP是总结了POP3协议的不足在此基础上进行优化的协议,复杂繁多也正式能力的表现,IMAP做了很多POP3无法做到的事情,协议也同样导致了服务器与客户端实现的复杂度,和整个业界的认可与推广,还好的就是IMAP已经在各大邮件服务器得到了实现,这里GMAIL功不可没啊。

IMAP协议的几种状态:

  1. Not Authenticated State: 非认证状态
    这个状态是还没有进行鉴权的过程,就是还没有输入用户名与密码进行校验的状态,这种状态下你不能对自己数据进行操作,例如你想看一下文件夹列表,或是某封邮件等。

  2. Authenticated State: 认证状态
    这个状态是已经输入了用户名密码并且已经得到服务器验证通过,此状态下才能对你的数据进行操作,这也比较好理解。

  3. Selected State: 选择状态
    这个状态的前提条件是"认证状态",至于为什么要有这个状态呢,可以理解成是对数据的直接操作,例如:选择一封邮件,将一封邮件设置已读等。

指令简介:

  1. CAPABILITY
    服务器响应能力描述,此指令个人理解是当前邮件服务器的能力。
  2. NOOP
    与服务器保持连接,可以用来新邮件或者消息状态更新。
  3. LOGOUT
    与服务器断开连接
  4. STARTTLS
    与服务器使用TLS进行交互
  5. AUTHENTICATE
    与服务器的认证机制
  6. LOGIN
    鉴权登陆,输入用户名与密码
  7. SELECT
    选择文件夹
  8. EXAMINE
    选择文件夹只读方式
  9. CREATE
    创建一个文件夹
  10. DELETE
    删除一个文件夹
  11. RENAME
    重命名一个文件
  12. SUBSCRIBE
    订阅指定的邮箱地址
  13. UNSUBSCRIBE
    取消订阅
  14. LIST
    返回详细的文件夹列表
  15. LSUB
    返回订阅的邮箱地址列表
  16. STATUS
    请求返回指定邮箱文件夹的状态
  17. APPEND
    追加一个状态,例如可以保存一封新的邮件
  18. CHECK
    检查当前服务器状态(例如:磁盘,内存等)
  19. CLOSE
    永久删除所有消息
  20. EXPUNGE
    永久删除所有消息,与CLOSE不同的是,将返回每个消息标识
  21. SEARCH
    类似linux系统find命令,功能很强大可以按照不同条件搜索邮件
  22. FETCH
    检索与消息相关数据,例如:获取正文
  23. STORE
    改变与消息相关数据,例如:设置邮箱已读、删除状态等
  24. COPY
    拷贝指定的消息
  25. UID
    返回UID列表用于fetch

参考:

  1. IMAP简介
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,242评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,769评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,484评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,133评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,007评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,080评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,496评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,190评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,464评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,549评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,330评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,205评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,567评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,889评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,160评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,475评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,650评论 2 335

推荐阅读更多精彩内容