Несмотря на то, что многие домены возвращают ложные срабатывания из-за злоупотребления, все же есть некоторые замечательные компоненты, которые будут выполнять несколько уровней проверки, помимо проверки SMTP. Например, стоит сначала проверить, существует ли хотя бы домен. Я нахожусь в процессе составления моего собственного списка ресурсов, связанных с этим вопросом, который вы можете отслеживать здесь:
http://delicious.com/dworthley/email.validation
Для тех, кто захочет добавить в этот список, я также включу то, что у меня сейчас есть:
Для пуленепробиваемой формы и отличного пользовательского опыта полезно проверить как можно больше аспектов адреса электронной почты. Я вижу из валидатора aspNetMX , что они проверяют:
- синтаксис
- электронное письмо со списком неверных адресов электронной почты
- домен против списка плохих доменов
- список доменов почтовых ящиков
- существует ли домен
- есть ли MX записи для домена
- и, наконец, через SMTP, существует ли почтовый ящик
Это последний шаг, который может быть обойден администраторами, возвращая значение true практически всем запросам на подтверждение учетной записи, но в большинстве случаев, если пользователь намеренно ввел неверный адрес, он уже был обнаружен. И если это была ошибка пользователя в доменной части адреса, то это тоже будет обнаружено.
Конечно, наилучшей практикой использования этого вида услуг для экрана регистрации или формы будет совмещение этого вида проверки с процессом проверки, чтобы убедиться, что адрес электронной почты действителен. Самое замечательное в использовании средства проверки электронной почты перед процессом проверки заключается в том, что это улучшит общее впечатление пользователя.