Проверка адреса электронной почты существует в C#

Относительно этого сообщения о подтверждении адреса электронной почты,

использование C#, как был бы Вы

  1. дайте команду VRFY
  2. дайте команду RCPT

7
задан Community 23 May 2017 в 10:31
поделиться

6 ответов

ИМО, метод RCPT - лучший, и я до сих пор использую его каждый день.

Вот необходимый код: http://mailsystem.codeplex.com/SourceControl/changeset/view/51422#541825

Класс довольно тяжелый, вам придется выбрать нужный фрагмент кода из исходного кода.

5
ответ дан 6 December 2019 в 04:47
поделиться

Вы можете попробовать использовать что-то подобное этому:

http://www.vcskicks.com/download-file-ftp.php

Вместо использования Ftp, используйте SMTP.

1
ответ дан 6 December 2019 в 04:47
поделиться

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

Чтобы внести ясность, лучший способ проверки адреса электронной почты - это отправить пользователю письмо, содержащее ссылку, и ждать, пока он нажмет на ссылку, чтобы подтвердить получение письма. Любая другая техника (за исключением корпоративной/интранет-среды) должна быть неудачной и/или лживой, чтобы победить спамеров.

36
ответ дан 6 December 2019 в 04:47
поделиться

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

5
ответ дан 6 December 2019 в 04:47
поделиться

Normally.

  • VRFY: Забудьте об этом. Серьезно ;) Ни один сервер не ответит - ни один вменяемый. Слишком часто используется спамерами.

    • Для остальных: подключайтесь к серверу по TCP, "просто сделайте это" (т.е. запрограммируйте рукопожатие SMTP, затем продолжайте).
2
ответ дан 6 December 2019 в 04:47
поделиться

Если вас не беспокоит, что публичные SMTP-серверы вам лгут (посмотрите раздел 2.11 здесь: http://tools.ietf.org/html/rfc2505), то лучшим способом может быть открытие TcpClient для сервера и самостоятельный запуск протокола SMTP. SMTP - это очень, очень простой протокол. Вы можете узнать все, что вам нужно знать, из Википедии: http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol

5
ответ дан 6 December 2019 в 04:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: