Skip to main content

6.3.12 APPEND 命令

参数 (Arguments):

  • 邮箱名称
  • 可选的标志括号列表 (OPTIONAL)
  • 可选的日期/时间字符串 (OPTIONAL)
  • 消息文字 (message literal)

响应 (Responses): 可选的无标记响应:LIST

结果 (Result):

  • OK - append 完成
  • NO - append 错误:无法附加到该邮箱,标志、日期/时间或消息文本错误
  • BAD - 命令未知或参数无效

APPEND 命令将文字参数作为新消息附加到指定目标邮箱的末尾。此参数应该 (SHOULD) 采用 [RFC5322] 或 [I18N-HDRS] 消息的格式。消息中允许使用 8 位字符。

如果指定了标志括号列表,则应该 (SHOULD) 在结果消息中设置标志;否则,默认情况下结果消息的标志列表设置为 "空"。

如果指定了日期时间,则应该 (SHOULD) 在结果消息中设置内部日期;否则,默认情况下结果消息的内部日期设置为当前日期和时间。

如果因任何原因附加失败,则必须 (MUST) 将邮箱恢复到 APPEND 尝试之前的状态;不允许部分附加。

如果目标邮箱不存在,服务器必须 (MUST) 返回错误,并且不得 (MUST NOT) 自动创建邮箱。除非确定无法创建目标邮箱,否则服务器必须 (MUST) 发送响应代码 "[TRYCREATE]" 作为标记 NO 响应文本的前缀。

成功完成 APPEND 后,服务器返回 APPENDUID 响应代码 (参见第 7.1 节),除非另有规定。

示例:

C: A003 APPEND saved-messages (\Seen) {326}
S: + Ready for literal data
C: Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
C: From: Fred Foobar <[email protected]>
C: Subject: afternoon meeting
C: ...
S: A003 OK APPEND completed

**注意:**APPEND 命令不用于消息传递,因为它不提供传输 [SMTP] 信封信息的机制。