测试IMAP服务器

测试IMAP服务器需要使用一套不同的命令。粗体的行同样是你输入的命令。为了简洁起见,我只摘了服务器输出的一部分:

$ openssl s_client -connect mailserver.com:993
[...]
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE AUTH=PLAIN AUTH=LOGIN] Dovecot ready.
. login carla password
. OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE [...] LIST-STATUS QUOTA] Logged in
. list "" "*"
 LIST (\HasChildren) "." "INBOX"
* LIST (\HasNoChildren) "." "INBOX.work"
* LIST (\HasNoChildren) "." "INBOX.personal"
* LIST (\HasNoChildren) "." "INBOX.Trash"
. examine INBOX
* FLAGS (\Answered \Flagged \Deleted \Seen \Draft Junk NonJunk $Forwarded)
* OK [PERMANENTFLAGS ()] Read-only mailbox.
* 1 EXISTS
* 1 RECENT
* OK [UNSEEN 1] First unseen.
[...]
. OK [READ-ONLY] Select completed.
. fetch 1 rfc822.text
* 1 FETCH (RFC822.TEXT {9}
test message, do not read. Kthx.
)
. OK Fetch completed.

. logout结束会话。list "" "*"命令列出了你的所有邮箱,而examine INBOX意味着列出收件箱里面的邮件。fetch 1 rfc822.text只显示邮件文本,不显示标题。要注意开头的点;这是个命令标记,必须要有。标记可以是任何字符或字符组合,不得有空格,而且必须放在你输入的每个命令前面。IMAP 会用你选择的命令标记给其回复作上标记,不过不知什么原因,它把点换成了星号。如果你使用数字或字母,它就会使用那些数字或字母;你可以试用不同的标记,就很容易看到。IMAP允许多个连接,所以标记告诉你命令和响应属于哪一个连接。

RFC 1939详细描述了所有POP3命令和会话中的正确步骤,RFC 3501则详细描述了IMAP4。


相关内容

    暂无相关文章