Appendix B. Generating SMTP Commands from RFC 822 Header Fields (从RFC 822头字段生成SMTP命令)
本附录描述了如何从RFC 822 (现为RFC 5322) 消息头字段生成SMTP信封命令。
核心原则
SMTP信封 (envelope) 与消息头 (message header) 是不同的:
- MAIL FROM: 来自信封,不一定来自"From:"头字段
- RCPT TO: 来自信封,不一定来自"To:", "Cc:"头字段
地址提取
从消息头生成SMTP命令时:
- MAIL FROM地址: 通常从"Sender:"或"From:"字段提取
- RCPT TO地址: 从"To:", "Cc:", "Bcc:"字段提取
注意事项
- 头字段中的地址可能包含显示名称和注释,必须提取纯邮箱地址
- "Bcc:"收件人不应出现在最终消息头中
- 列表扩展和别名解析在SMTP服务器端处理
示例:
消息头:
From: Alice <[email protected]>
To: Bob <[email protected]>, Carol <[email protected]>
生成的SMTP命令:
MAIL FROM:<[email protected]>
RCPT TO:<[email protected]>
RCPT TO:<[email protected]>