使用SMTP验证验证电子邮件地址是一种好习惯吗?

Pau*_*kov 2 smtp email-validation

让我们假设我有一个网站,其中包含一些需要电子邮件验证的功能(例如用户注册).当然,我将使用正则表达式验证电子邮件,但曾几何时我在其他人的代码中看到了SMTP验证.SMTP验证有哪些好处和坏处?

我可以假设以下优点和缺点:

优点:

  • 我们可以查看一些存在的电子邮件地址(并非所有SMTP服务器都允许此功能).

缺点:

  • 我们的网站可以被阻止.
  • 也许我们可以用它来使网络服务器崩溃.Web服务器将获取域名部分的电子邮件地址并向其发出请求.我们可以创建虚假的SMTP服务器来接收请求,但会对响应做出很大的延迟.也许如果我们强制网络服务器进行数十次此类检查,它将无法回答其他客户端.
  • 并非所有SMTP服务器都提供此功能.

请有建设性.

Sam*_*tch 8

"SMTP验证"我假设是指SMTP VRFY命令,在这个时代你会相信它是一个傻瓜.如果您是垃圾邮件发送者,这是一个很棒的功能,因为它允许您枚举给定服务器的电子邮件地址.

在他们正确的思想中,没有人会将这个命令暴露给互联网,并让它以除了252 send some mail, i'll try my best"我只是在实际的邮件交易中验证电子邮件地址" 之外的任何事情做出回应.

这些天唯一合理的用途VRFY是作为垃圾邮件过滤设备和隐藏在其后面的邮件服务器之间的内部接口.

TL; DR不要使用"SMTP验证",它充其量是非常不可靠.

如果要验证用户是否输入了有效的电子邮件地址,请向其发送包含激活链接/代码的电子邮件.

  • @Elby:无,零,空,空集,纳达。验证电子邮件地址的*唯一*可靠方法是向其发送电子邮件,并让某人根据该电子邮件中的信息执行操作。这也可以为您提供双重选择加入,帮助您不被归类为垃圾邮件发送者。 (2认同)