[root@VM-4-12-centos ~]# telnet 0 143

Trying 0.0.0.0...

Connected to 0.

Escape character is '^]'.

* OK Coremail System IMap Server Ready

# 通过LOGIN命令登录。a01表示命令编号,每个命令编号不要重复;后面跟着的是账号和密码。如果想做相关测试,只需要复制相关命令。

a01 LOGIN t1@mailabc.cn yiWFnAPfFweU9vPT

a01 OK LOGIN completed

# 列出可用命令

a02 CAPABILITY

* CAPABILITY IMAP4rev1 XLIST SPECIAL-USE ID LITERAL+ STARTTLS APPENDLIMIT=20971520 UIDPLUS

a02 OK CAPABILITY completed

# 列出文件夹列表,相关参数可以查阅其他资料

a03 LIST "" "*"

* LIST () "/" "INBOX"

* LIST (\Drafts) "/" "Drafts"

* LIST (\Sent) "/" "Sent Items"

* LIST (\Trash) "/" "Trash"

* LIST (\Junk) "/" "Junk E-mail"

* LIST () "/" "Virus Items"

a03 OK LIST Completed

# 选择一个邮件箱(文件夹),参数对应LIST命令输出的文件夹信息

a04 SELECT "INBOX"

* 7 EXISTS

* 0 RECENT

* OK [UIDVALIDITY 1] UIDs valid

* FLAGS (\Answered \Seen \Deleted \Draft \Flagged)

* OK [PERMANENTFLAGS (\Answered \Seen \Deleted \Draft \Flagged)] Limited

a04 OK [READ-WRITE] SELECT completed

# 通过FETCH命令获取编号1-2的UID信息,后续对邮件的操作基本上都是根据UID来进行,可以理解这是每封邮件唯一识别号

a05 FETCH 1:2 (UID)

* 1 FETCH (UID 1681789653)

* 2 FETCH (UID 1681789654)

a05 OK Fetch completed

# 通过UID FETCH命令获取特定邮件的FLAGS标志,如未读、已读

a06 UID FETCH 1681789653 FLAGS

* 1 FETCH (UID 1681789653 FLAGS (\Seen))

a06 OK Fetch completed

# 通过UID FETCH指令获取某封邮件的全部摘要信息

a07 UID FETCH 1681789653 ALL

* 1 FETCH (UID 1681789653 INTERNALDATE "18-Apr-2023 11:47:33 +0800" FLAGS (\Seen) ENVELOPE ("Tue, 18 Apr 2023 11:47:33 +0800 (GMT+08:00)" "=?UTF-8?B?5qyi6L+O5L2/55SoQ29yZW1haWznlLXlrZDpgq7ku7bns7vnu58vV2VsY29tZSB0byB0aGUgQ29yZW1haWwgZS1tYWlsIHN5c3RlbQ==?=" ((NIL NIL "postmaster" "mailabc.cn")) ((NIL NIL "postmaster" "mailabc.cn")) ((NIL NIL "postmaster" "mailabc.cn")) ((NIL NIL "t1" "mailabc.cn")) NIL NIL NIL "<792468312.0.1681789653872@VM-4-12-centos>") RFC822.SIZE 7766)

a07 OK Fetch completed

# 通过UID FETCH指令获取某封邮件的BODY正文原文信息

a08 UID FETCH 1681789653 BODY[TEXT]

* 1 FETCH (UID 1681789653 BODY[TEXT] {7251}

=91;">

...

# 正常来说,这里会输出一大段信息,这里做了省略

a08 OK Fetch completed

# 创建名为test1的文件夹

a09 CREATE test1

a09 OK mailbox created

# 删除名为test1的文件夹

a10 DELETE test1

a10 OK mailbox deleted

# 通过STATUS获取收件箱的状态信息

a11 STATUS "INBOX" (MESSAGES RECENT UNSEEN UIDNEXT UIDVALIDITY)

* STATUS "INBOX" (MESSAGES 7 RECENT 0 UIDVALIDITY 1 UNSEEN 0)

a11 OK STATUS completed

温馨提示:上述演示内容基于Coremail邮件系统,不同厂商的系统IMAP协议的支持程度有所不同。由于命令较多、参数复杂,有兴趣的同学可以查阅相关资料了解更详细的信息。如对本文感兴趣,可以私信我。

← 上一篇: 3、天刀手游阵营选哪个
下一篇: 微博怎么取消粉丝?详细教程教你轻松管理粉丝 →