Skip to main content

8. Sample IMAP4rev1 Connection (IMAP4rev1 示例连接)

以下是 IMAP4rev1 连接的记录. 为了编辑清晰, 此示例中的长行已被断开.

S:   * OK IMAP4rev1 Service Ready
C: a001 login mrc secret
S: a001 OK LOGIN completed
C: a002 select inbox
S: * 18 EXISTS
S: * FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
S: * 2 RECENT
S: * OK [UNSEEN 17] Message 17 is the first unseen message
S: * OK [UIDVALIDITY 3857529045] UIDs valid
S: a002 OK [READ-WRITE] SELECT completed
C: a003 fetch 12 full
S: * 12 FETCH (FLAGS (\Seen) INTERNALDATE "17-Jul-1996 02:44:25 -0700"
RFC822.SIZE 4286 ENVELOPE ("Wed, 17 Jul 1996 02:23:25 -0700 (PDT)"
"IMAP4rev1 WG mtg summary and minutes"
(("Terry Gray" NIL "gray" "cac.washington.edu"))
(("Terry Gray" NIL "gray" "cac.washington.edu"))
(("Terry Gray" NIL "gray" "cac.washington.edu"))
((NIL NIL "imap" "cac.washington.edu"))
((NIL NIL "minutes" "CNRI.Reston.VA.US")
("John Klensin" NIL "KLENSIN" "MIT.EDU")) NIL NIL
"<[email protected]>")
BODY ("TEXT" "PLAIN" ("CHARSET" "US-ASCII") NIL NIL "7BIT" 3028
92))
S: a003 OK FETCH completed
C: a004 fetch 12 body[header]
S: * 12 FETCH (BODY[HEADER] {342}
S: Date: Wed, 17 Jul 1996 02:23:25 -0700 (PDT)
S: From: Terry Gray <[email protected]>
S: Subject: IMAP4rev1 WG mtg summary and minutes
S: To: [email protected]
S: cc: [email protected], John Klensin <[email protected]>
S: Message-Id: <[email protected]>
S: MIME-Version: 1.0
S: Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
S:
S: )
S: a004 OK FETCH completed
C: a005 store 12 +flags \deleted
S: * 12 FETCH (FLAGS (\Seen \Deleted))
S: a005 OK +FLAGS completed
C: a006 logout
S: * BYE IMAP4rev1 server terminating connection
S: a006 OK LOGOUT completed

说明:

此示例展示了一个完整的 IMAP4rev1 会话流程:

  1. 服务器问候: 服务器以 * OK 响应欢迎客户端
  2. 登录: 客户端使用 LOGIN 命令进行认证
  3. 选择邮箱: 客户端使用 SELECT 命令选择 INBOX 邮箱
    • 服务器返回邮箱状态信息 (18条消息, 2条最近消息, 第17条未读等)
  4. 获取消息: 客户端使用 FETCH 命令获取消息12的完整信息 (FULL宏)
    • 包括标志, 内部日期, 大小, 信封结构和正文结构
  5. 获取标头: 客户端使用 FETCH 命令获取消息12的标头
    • 服务器返回完整的邮件标头
  6. 修改标志: 客户端使用 STORE 命令为消息12添加 \Deleted 标志
  7. 注销: 客户端使用 LOGOUT 命令结束会话
    • 服务器发送 BYE 响应并关闭连接