有效电子邮件地址的最大长度是多少?它是由任何标准定义的吗?
当前回答
用户 用户名的总长度不能超过64个字符。 域 域部分(@后面的部分)最多255个字符
然而,在RFC 2821中有一个限制:
反向路径和正向路径的总长度最大为256 字符,包括标点符号和元素分隔符”。自 不符合这些字段的地址通常是没有用的 地址长度的上限通常被认为是 path = " < " [a -d-l ": "]邮箱" > " 中至少包含一对尖括号 添加到邮箱,将电子邮件地址限制为254 字符。
其他回答
用户 用户名的总长度不能超过64个字符。 域 域部分(@后面的部分)最多255个字符
然而,在RFC 2821中有一个限制:
反向路径和正向路径的总长度最大为256 字符,包括标点符号和元素分隔符”。自 不符合这些字段的地址通常是没有用的 地址长度的上限通常被认为是 path = " < " [a -d-l ": "]邮箱" > " 中至少包含一对尖括号 添加到邮箱,将电子邮件地址限制为254 字符。
其他的回答把水搅浑了一点。 简单的回答:我们控制的电子邮件的总字符为254个 256个代表整个电子邮件地址,其中包括开头隐含的“<”和结尾的“>”。因此,剩下254个供我们使用。
为了帮助像我这样困惑的新手,“有效电子邮件地址的最大长度是多少?”的答案是254个字符。
如果您的应用程序使用电子邮件,只需将字段设置为接受254个字符或更少的字符,就可以了。
你可以对电子邮件进行一系列测试,看看它在这里是否有效。http://isemail.info/
RFC (Request for Comments)是互联网工程任务组(IETF)的一种出版物,它将254个字符定义为限制。位于这里- https://www.rfc-editor.org/rfc/rfc5321#section-4.5.3
邮件地址长度不超过254个字符。
IETF在提交勘误表后接受了这一点。任何给定地址的完整诊断都可以在网上找到。RFC 3696的原始版本将320描述为最大长度,但John Klensin随后接受了一个不正确的值,因为路径被定义为
Path = "<" [ A-d-l ":" ] Mailbox ">"
因此Mailbox元素(即电子邮件地址)周围有尖括号,以形成一个Path,其最大长度为254个字符,以限制Path长度为256个字符或更少。
RFC 5321中规定的最大长度说明:
反向路径和正向路径的总长度最大为256个字符。
这里更正了RFC 3696。
人们应该特别注意RFC 3696的勘误表。其中三个典型示例实际上是无效地址。
我整理了几百个测试地址,您可以在http://www.dominicsayers.com/isemail上找到它们
不幸的是,其他答案都是错的。大多数人引用了RFC 2821或更新的版本,该版本甚至没有定义电子邮件地址。它所做的就是定义路径。电子邮件地址由RFC 2822(或更新的版本)定义,可以更长。有效地址不是有效路径的例子有:
(Firstname Lastname) user@domain
Firstname Lastname <user@domain>
这两个都是相同的邮箱,但写得不同。因此,如果您的目标是在数据库中存储电子邮件地址,254、256或320个字节的限制可能太低了,尽管在实践中,这很少会成为问题。
推荐文章
- jQuery:什么是限制“数字”仅输入文本框的最佳方法?(允许使用小数点)
- 如何在AngularJS中有条件地要求表单输入?
- 什么HTTP状态码应该用于错误的输入
- 从JSON数据生成JSON模式的工具
- 为什么一个函数检查字符串是否为空总是返回true?
- 如何使用Python发送电子邮件?
- 如何从iPhone应用程序发送邮件
- 架构i386的未定义符号:_OBJC_CLASS_$_SKPSMTPMessage",引用自:错误
- 如何在Jenkins中设置发件人地址?
- 用javascript检查输入字符串中是否包含数字
- jQuery添加必要的输入字段
- 什么是最好的Java电子邮件地址验证方法?
- PHPMailer字符编码问题
- 我应该在SQL varchar(长度)中考虑电话的最长的全球电话号码是什么
- Require (vendor/autoload.php):无法打开流