Мені цікаво, як далеко люди повинні зайняти перевірку електронної адреси. Моя сфера - це насамперед веб-розробка, але це стосується будь-де.
Я бачив кілька підходів:
- просто перевірити, чи є подарунок "@", який мертвий простий, але, звичайно, не такий надійний.
- більш складний тест на регулярний вимір для стандартних форматів електронної пошти
- повне регулярний вираз проти RFC 2822 - проблема з цим полягає в тому , що часто електронної пошти може бути дійсним , але це, ймовірно , не те , що мав в виду користувач
- Перевірка DNS
- Перевірка SMTP
Як багато хто може знати (але багато хто з них не знає), адреси електронної пошти можуть мати дуже багато дивних варіантів, які більшість людей зазвичай не вважають (див. RFC 2822 3.4.1 ), але ви повинні думати про цілі ваша перевірка: чи просто ви намагаєтеся переконатися, що повідомлення електронної пошти може бути надіслано на адресу, чи це те, що користувач, ймовірно, мав намір ввести (що навряд чи в багатьох більш незрозумілих випадках інакше "дійсне" 'адреси).
Я розглядав варіант - просто подати попередження з більш езотеричною адресою, але все-таки дозволяти проханню пройти, але це додасть форми більше складності, і більшість користувачів, ймовірно, будуть заплутані.
Незважаючи на те, що перевірка DNS / перевірка SMTP здається нереалістичною, я передбачаю проблеми, коли DNS-сервер / SMTP-сервер тимчасово не працює, а користувач не може десь зареєструватися, або SMTP-сервер користувача не підтримує необхідні функції.
Як деякі досвідчені розробники тут можуть впоратися з цим? Чи є інші підходи, ніж ті, які я перерахував?
Редагувати: Я повністю забув найочевидніше з усіх, надсилаючи підтвердження електронною поштою! Дякуємо відповідачам за те, що вказали на це. Так, цей досить дурний, але для всіх, хто бере участь, потрібні додаткові клопоти. Користувачеві потрібно отримати електронну пошту, і розробник повинен запам'ятати дані користувачів, перш ніж вони навіть будуть підтверджені як дійсні.