有时在电子邮件信息的“发件人”字段中出现尖括号,这是否正确?

9

我的软件正在处理来自一个特定发件人(比如SantaClaus@hetnet.nl)的电子邮件。根据RFC-2616第14节“From”头部,

可以用于日志记录目的和作为识别无效或不想要请求来源的手段。

这正是我需要的,所以我编写了一个代码,忽略所有“From”字段不等于 SantaClaus@hetnet.nl 的消息。它工作得很好,但有一天事情改变了,现在所有来自Santa Claus的消息都包含“From”字段中的不同字符串(确切地说是<SantaClaus@hetnet.nl>)。我已经修复了我的代码,但我只是想知道,这个头部是否合法?因为同样的RFC-2616第14节也说:

The address SHOULD be machine-usable, as defined by "mailbox" in RFC 822 [9] as updated by RFC 1123 [8]:

   From   = "From" ":" mailbox

An example is:

   From: webmaster@w3.org
请注意,此处没有角括号。但是,在我的Gmail帐户上收到的许多电子邮件消息在“发件人”字段中会有类似以下内容:"Santa Claus" <santaclaus@hetnet.nl>
1个回答

19

RFC-822 允许通过纯email格式的地址(称为“addr-spec”,例如 name@host.domain)或者使用昵称(“phrase”)以及尖括号包含的email格式地址(“addr-spec”)来指定电子邮件地址。您的发件人已从第一种格式转换为第二种格式,尽管这里的昵称部分似乎为空。

顺便提一下,RFC-2616是关于HTTP的;您正在查看HTTP协议中一个可选且很少使用的From:头定义。这似乎与电子邮件格式没有直接相关性。


1
没错,RFC-2616是由于糟糕的搜索结果而产生的,现在我知道我需要您提到的RFC(http://tools.ietf.org/html/rfc822),并且`Foo Bar foobar@host.domain`是符合标准的。 - Graf

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接