验证C#中是否存在电子邮件地址

Ken*_*h J 7 c# email smtp email-verification

关于这篇 关于电子邮件验证的

使用C#,你会怎么样?

  1. 发出VRFY命令
  2. 发出RCPT命令

Spe*_*nce 36

我想你会发现,在很多情况下,这些功能都会故意欺骗垃圾邮件发送者.如果有一种方法来确认电子邮件是真实的,而不是让用户点击验证(或取消订阅....)链接,那么垃圾邮件发送者会非常开心.

需要明确的是,验证电子邮件地址的最佳方法是向用户发送包含链接的电子邮件,并等待他们点击该链接以验证他们是否收到了电子邮件.任何其他技术(公司/内部网环境除外)都应该失败和/或欺骗以打败垃圾邮件发送者.

  • 我很欣赏这个建议,但问题不在于"验证电子邮件的最佳方法是什么". (5认同)

Adr*_*ciu 5

有一个很好的项目在这里就如何实现这一代码片段,但正如斯宾塞提到他们可能不总是正常工作.


Sea*_*rds 5

如果你不担心公共SMTP服务器对你说谎(请看这里的2.11节:http://tools.ietf.org/html/rfc2505),那么最好的方法可能就是打开一个TcpClient来服务器并自己运行SMTP协议.SMTP是一个非常非常简单的协议.您可以从维基百科中学到所有需要了解的知识:http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol


小智 5

IMO,RCPT方法是最好的方法,我仍然每天使用它.

以下是必要的代码:http://mailsystem.codeplex.com/SourceControl/changeset/view/51422#541825

这个类很重,你必须从源代码中选择你需要的代码片段.