Quelle est la longueur maximale d'une adresse e-mail valide? Est-il défini par une norme?
Quelle est la longueur maximale d'une adresse e-mail valide? Est-il défini par une norme?
Réponses:
Une adresse e-mail ne doit pas dépasser 254 caractères.
Cela a été accepté par l'IETF suite à l' erratum soumis . Un diagnostic complet d'une adresse donnée est disponible en ligne . La version originale de RFC 3696 décrivait 320 comme la longueur maximale, mais John Klensin a par la suite accepté une valeur incorrecte, car un chemin est défini comme
Path = "<" [ A-d-l ":" ] Mailbox ">"
Ainsi, l'élément de boîte aux lettres (c'est-à-dire l'adresse e-mail) est entouré de crochets pour former un chemin, d'une longueur maximale de 254 caractères pour limiter la longueur du chemin à 256 caractères ou moins.
La longueur maximale spécifiée dans la RFC 5321 indique:
La longueur totale maximale d'un chemin inverse ou direct est de 256 caractères.
RFC 3696 a été corrigé ici .
Les gens doivent être conscients des errata contre RFC 3696 en particulier. Trois des exemples canoniques sont en fait des adresses invalides.
J'ai rassemblé quelques centaines d'adresses de test, que vous pouvez trouver sur http://www.dominicsayers.com/isemail
320
Et les segments ressemblent à ceci
{64} @ {255}
64 + 1 + 255 = 320
Vous devriez également lire ceci si vous validez des e-mails
http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx
<>
crochets ...
user+inbox@domain
?
utilisateur
La longueur totale maximale d'un nom d'utilisateur est de 64 caractères.
domaine
255 caractères maximum dans la partie domaine (celle après le «@»)
Cependant, il y a une restriction dans la lecture RFC 2821 :
La longueur totale maximale d'un chemin inverse ou direct est de 256 caractères, y compris la ponctuation et les séparateurs d'éléments ». Étant donné que les adresses qui ne rentrent pas dans ces champs ne sont normalement pas utiles, la limite supérieure de la longueur des adresses doit normalement être considérée comme 256, mais un chemin d'accès est défini comme suit: Path = “<” [Adl “:”] Mailbox “> ”Le chemin de transfert contiendra au moins une paire de crochets en plus de la boîte aux lettres, ce qui limite l'adresse e-mail à 254 caractères.
Pour aider les recrues confuses comme moi, la réponse à "Quelle est la longueur maximale d'une adresse e-mail valide?" est de 254 caractères .
Si votre application utilise un e-mail, définissez simplement votre champ pour accepter 254 caractères ou moins et vous êtes prêt à partir.
Vous pouvez exécuter un tas de tests sur un e-mail pour voir s'il est valide ici. http://isemail.info/
Le RFC, ou Request for Comments, est un type de publication de l'Internet Engineering Task Force (IETF) qui définit 254 caractères comme limite. Situé ici - https://tools.ietf.org/html/rfc5321#section-4.5.3
Selon l'article ci-dessous:
http://tools.ietf.org/html/rfc3696 (page 6, section 3)
Il est mentionné que:
"Il existe une limite de longueur pour les adresses e-mail. Cette limite est de 64 caractères (octets) au maximum dans la" partie locale "(avant le" @ ") et de 255 caractères (octets) au maximum dans la partie domaine (après le "@") pour une longueur totale de 320 caractères. Les systèmes qui gèrent les e-mails doivent être prêts à traiter des adresses aussi longues, même si elles sont rarement rencontrées. "
Ainsi, la longueur totale maximale d'une adresse e-mail est de 320 caractères ("partie locale": 64 + "@": 1 + "partie de domaine": 255, ce qui correspond à 320)