2010-06-26 3 views
3

У меня есть веб-приложение, в котором посетители подписываются и получают информационный бюллетень по электронной почте, которую они зарегистрировали.Обращение с опечатками в электронных письмах или зарегистрированным пользователям

Я использую только одно поле электронной почты в форме регистрации, так как я хочу уменьшить количество полей, и я считаю, что большинство людей (например, меня) копируют и вставляют электронное письмо, которое означает, что опечатка распространится на вторичную проверку поле.

Моя проблема заключается в том, что справедливый процент подписчиков имеет опечатку в адресе электронной почты, например. @yhaoo, @hotmaill и т. д.

Как я могу эффективно справиться с такими опечатками?

Я подумывал сделать простую автоматическую коррекцию, используя список орфографических ошибок для общих доменов, но я не могу подготовить полный список для этого.

+2

И вы действительно не можете быть уверены, что это действительно опечатка - будьте осторожны с тем, что люди набирают. – Oded

ответ

0

Прежде всего, вы должны сначала выполнить поиск DNS, чтобы узнать, существует ли допустимая запись MX для этого домена (что предполагает существование домена) - если нет, вы не должны принимать это письмо.

Во-вторых, найдите перенаправление http из домена в другой домен. Например. yayoo.com и yahooo.com оба перенаправляются на yahoo.com, поэтому вы можете показать предупреждающее сообщение «Вы имели в виду ... @ yahoo.com?» или даже автоматически исправлять адреса из белого списка, которые вы убедились, безопасны для исправления.

Наконец, если есть действительная запись MX и нет перенаправления, ваши оставшиеся преступники, скорее всего, будут просто опечатками, которые приводят к тому, что hitfarms вернутся на опечатки для крупных поставщиков (или невинных других сервисов), например. gmial.com. Для этого вы можете прибегнуть к ручному построению хеш-таблицы автоматически корректирующих предложений (опять же, предложив пользователю «Вы имели в виду ..» шаг, прежде чем принимать представление.

5

Когда форма опубликована, вы можете выполнить поиск DNS, чтобы узнать, есть ли запись MX для домена. Если этого не происходит, вы можете быть почти уверены, что это опечатка, потому что отправка на этот адрес не будет доставлена. Затем вы можете повторно отобразить форму с дружественным сообщением об ошибке, попросив пользователя подтвердить правильность адреса электронной почты.

Не корректировать автоматически, не запрашивая пользователя. Это будет очень сложно, и вы можете столкнуться с запутанными пользователями, которые имеют свой адрес электронной почты в домене, который очень похож на другой домен.

0

Я знаю, что вопрос старый. мой ответ поможет кому-то я использую Mailgun API обрабатывать опечатки в адресах электронной почты

0

у меня был тот же вопрос, и я просто нашел бесплатно библиотеки JavaScript в http://getmailcheck.org, что я думаю, что будет решать наши проблемы:..

Библиотека Javascript и jQu который предлагает правильный домен, когда ваши пользователи ошибочно написали его на адрес электронной почты.

Когда ваш пользователь вводит «[email protected]», Mailcheck предложит «[email protected]».

Mailcheck предложит предложения для доменов второго и верхнего уровня тоже. Например, когда пользователь вводит «[email protected]», будет предложено «hotmail.com».

Аналогично, если только домен второго уровня имеет орфографическую ошибку, он будет исправлен независимо от домена верхнего уровня.

Предполагается, что он используется Dropbox, Lyft, Kickstarter, Khan Academy и многое другое.