过滤一次性电子邮件地址,而不将地址暴露给第三方

时间:2015-04-28 10:01:37

标签: email-validation

为了防止用户使用一次性电子邮件地址注册我的网站,我想在注册时查看电子邮件地址。我发现许多Web服务可以根据其内部的一次性电子邮件域列表验证电子邮件地址。我还在Stack Overflow中找到了明确推荐这种方法的问题/答案。

我认为使用这种方法是一个非常糟糕的主意。由于隐私问题(甚至隐私政策),您不应该将用户电子邮件地址(甚至只是其域名部分)暴露给第三方。

我找到了一些公开名单,但似乎都没有更新:

是否有人知道公开列表,该列表会定期更新?

3 个答案:

答案 0 :(得分:1)

有关一次性电子邮件域的来源,请访问www.block-disposable-email.com。虽然api访问是获取最新响应的最佳方式,但企业用户可以使用下载供离线使用(http://www.block-disposable-email.com/cms/help-and-usage/)。

根据我的经验,公共/免费列表不是很可靠。

完全披露:我是此服务的联合创始人,可检测超过6.500个dea域名(无误报)。

答案 1 :(得分:0)

您可以使用此免费JavaScript库:https://github.com/AppBeat-io/JavaScript

用法示例:

AppBeat.Email.isDisposable('something@sharklasers.com'); //returns true
AppBeat.Email.isDisposable('something@mailinator.com'); //returns true
AppBeat.Email.isDisposable('   something@mailinator.com   '); //returns true
AppBeat.Email.isDisposable('@mailinator.com'); //returns true
AppBeat.Email.isDisposable('mailinator.com'); //returns true
AppBeat.Email.isDisposable('unknown-domain.some-domain'); //returns false
AppBeat.Email.isDisposable('something@unknown-domain.some-domain'); //returns false
AppBeat.Email.isDisposable('something@gmail.com'); //returns false (whitelisted)
AppBeat.Email.isDisposable('something@outlook.com'); //returns false (whitelisted)

答案 2 :(得分:0)

为此,您将需要使用某种反欺诈服务或api验证程序。我个人使用ipqs,因为它免费提供给我(我每月使用少于5,000次)