我正在尝试以编程方式测试域是否具有托管在其上的所有电子邮件地址。我想知道一个特定的领域-即。 facebook.com-将收到发送到blahblah@facebook.com的电子邮件。

我目前正在使用节点DNS来查看该域是否首先具有Mx记录,然后将ping发送到电子邮件,但是很慢,这很慢,我想知道是否有更快的方法来检测到该记录。

validateDomain: function(domain, array, i, callback) {
    var testEmail = '1qaz2wsx3edc4rfv5tgb@' + domain;
    checkEmail(testEmail, function(validation, addresses, err) {
        if (validation) {
            callback( err, false, array, i);
        } else {
            array.push(domain);
            callback( null, true, array, i);
        }
    });
}


这是我目前设置的方式,可以使用一封不太可能发生的电子邮件来验证全部内容。函数checkEmail使用Mx记录来查看域是否有电子邮件并发送ping。这是我要替换以检测所有故障的功能。

谢谢,

最佳答案

据我所知,并没有在DNS中实现所有捕获电子邮件陷阱,而是在电子邮件服务器级别配置了捕获陷阱。因此,除了检查电子邮件地址的有效性之外,没有其他方法可以测试。

请注意,您不必实际发送电子邮件进行测试。例如,在SMTP会话中,RCPT TO命令返回:成功时200或250,前进251或551,252无法验证但将接受,450或550邮箱不可用,552超出存储空间,553邮箱名称不被允许。确定通配符是否存在后,您将发送QUIT。

关于node.js - 测试域中的catch Node js中的所有电子邮件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30459317/

10-17 00:07