Должны ли заглавные буквы быть разрешены в адресах электронной почты? - PullRequest
6 голосов
/ 14 марта 2011

Официальные документы RFC заявляют , что мы можем использовать как прописные, так и строчные буквы в "локальной" части домена (плюс многие другие сумасшедшие вещи).

Однако то, что является обычным в реальном мире, и то, что говорится в спецификации, - это две разные вещи.Ни один из этих дополнительных символов (! # $ % & ' * / = ? ^ { | } ~) не разрешен в электронных письмах от крупных провайдеров, таких как Yahoo, Google или Hotmail.Кроме того, очень, очень редко можно увидеть электронное письмо, содержащее заглавные буквы (JohnDoe@example.com).

Сегодня я отправил себе пару электронных писем, используя различные прописные и строчные буквы, и обнаружил, что мои почтовые серверывсе рассматривали их как одну и ту же учетную запись, игнорируя тот факт, что регистр букв был другим.Другими словами, JohnDoe@example.com = johndoe@example.com на мои почтовые серверы (включая мои бесплатные почтовые учетные записи).

Должен ли я действовать в формате, который выбрал мир, - и стандартизировать /строчные буквы всех писем ANSII? Или я должен разрешить пользователям регистрировать несколько учетных записей как JohnDoe@example.com, johndoe@example.com и JOHNdoe@example.com?

Ответы [ 4 ]

4 голосов
/ 14 марта 2011

Вероятно, правильный компромисс состоит в том, чтобы позволить им зарегистрироваться с использованием заглавных букв по своему выбору и показать это там, где это необходимо («Входящие в JOHNdoe@example.com»). Но вы должны канонизировать использование заглавных букв для проверок уникальности, так как существует много плохо отправленных почтовых отправителей, например, перед отправкой используйте весь адрес электронной почты.

3 голосов
/ 14 марта 2011

На сервере Microsoft SQL по умолчанию индексы не чувствительны к регистру.

Если вы поместите уникальный индекс в поле, пользователь может иметь удобное для читателя имя CamelCase, например JohnDoe@acme.org, а дубликаты, такие как johndoe@ACME.org, будут автоматически отклоняться.

2 голосов
/ 14 марта 2011

Причиной стандарта стало то, что не-Unix-системы могли участвовать в ARPAnet, а затем и в Интернете, с минимальными трудностями. (VMS и Tenex были распространены в первом, и BITNET также был представлен. Во втором, по крайней мере, строчные буквы требовали 3278 или обновленные 3270 терминалов.) В наши дни лучше игнорировать регистр в локальной части, так как все выяснили, как использовать строчные буквы по необходимости.

1 голос
/ 14 марта 2011

Я бы лично предпочел стандартизировать / прописать все электронные письма.Это упростит вам задачу, потому что, если пользователь отправляет электронную почту или входит в вашу систему, очень просто набрать неверный адрес электронной почты - JohnDoe@example.com против johnDoe@example.com.И, как вы сказали, крупные провайдеры приняли решение следовать этой схеме.Даже если вы разрешите вводить заглавные буквы, это может смутить вашу общую базу пользователей, так как они ожидают чего-то другого (AKA все строчные).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...