Validation 最大internet电子邮件ID长度
我正在寻找应用程序中用于验证目的的internet消息ID字段允许的最大字符长度。我查阅了诸如和以及等各种来源。我能找到的最接近的答案是“998个字符”,因为这是规范允许互联网消息(来自RFC-2822)中每行的最大长度,消息ID字段不能是多行Validation 最大internet电子邮件ID长度,validation,email,maxlength,Validation,Email,Maxlength,我正在寻找应用程序中用于验证目的的internet消息ID字段允许的最大字符长度。我查阅了诸如和以及等各种来源。我能找到的最接近的答案是“998个字符”,因为这是规范允许互联网消息(来自RFC-2822)中每行的最大长度,消息ID字段不能是多行 998个字符是最终答案吗?没有这样的限制吗?如果我对电子邮件有一点了解的话,那就是它是一个用于电子邮件软件的大规模分布式系统。也就是说,无论RFC说什么,你都会发现电子邮件违反了它们,有些电子邮件软件应对,有些则失败。我想大多数人都会在脑海中蹒跚而行 这
998个字符是最终答案吗?没有这样的限制吗?如果我对电子邮件有一点了解的话,那就是它是一个用于电子邮件软件的大规模分布式系统。也就是说,无论RFC说什么,你都会发现电子邮件违反了它们,有些电子邮件软件应对,有些则失败。我想大多数人都会在脑海中蹒跚而行 这样一来,我认为符合RFC的消息ID的最大长度是995个字符
您引用的每个RFC的最大行长度为998个字符。这将包括“messageid:”字段名,但您可以在字段名和字段正文之间进行折线。然后,包含实际消息ID的行将包含一个空格(折叠空格),“”。从语义上讲,尖括号不是Message-ID的一部分。因此,您最多可以使用998-3=995个字符。实际上没有限制 定义这些产品:
message-id = "Message-ID:" msg-id CRLF
msg-id = [CFWS] "<" id-left "@" id-right ">" [CFWS]
id-left = dot-atom-text / no-fold-quote / obs-id-left
obs-id-left = local-part
local-part = dot-atom / quoted-string / obs-local-part
quoted-string = [CFWS]
DQUOTE *([FWS] qcontent) [FWS] DQUOTE
[CFWS]
CFWS = *([FWS] comment) (([FWS] comment) / FWS)
FWS = ([*WSP CRLF] 1*WSP) / ; Folding white space
消息id=“消息id:”消息id CRLF
消息id=[CFWS]“”[CFWS]
左id=点原子文本/无折叠引号/左obs id
obs id左=本地部分
局部部分=点原子/带引号的字符串/obs局部部分
带引号的字符串=[CFWS]
DQUOTE*([FWS]qcontent)[FWS]DQUOTE
[财经事务及库务局局长]
CFWS=*([FWS]评论)([FWS]评论)/FWS)
FWS=([*WSP CRLF]1*WSP)/;折叠空白
因此,id left
可以是本地部分
,可以是带引号的字符串
(因此有多个fw
)
因此,您可以根据需要将其折叠任意多次,以适合任意形状
有效载荷的长度,并且仍然符合给定的限制
当然,如果选择接受符合RFC-822的任意消息,它甚至不会设置最大行长。