【问题标题】:Verify Email address with valid MX SERVER使用有效的 MX SERVER 验证电子邮件地址
【发布时间】:2016-06-26 15:23:44
【问题描述】:

我正在开发一个桌面应用程序来发送批量电子邮件。在这里,我必须验证电子邮件地址是否有效。使用正则表达式我可以验证格式,但如何验证电子邮件地址实际有效或托管。

           string email = txtEmailAddress.Text.Trim();

            if (!System.Text.RegularExpressions.Regex.IsMatch(email, @"^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$"))
            {
                MessageBox.Show("XInValid email address!"); 
            }
            else
            {
                MessageBox.Show("Valid email address!"); 

            }

现在问题仍然悬而未决。如何验证电子邮件地址?我用谷歌搜索但没有得到任何有用的链接,有些链接不是免费的。

【问题讨论】:

标签: c# asp.net email c#-4.0 email-validation


【解决方案1】:

您可以使用电子邮件验证服务,如mailcheck.co,它有免费配额,并允许通过 curl 进行验证。 谷歌也有免费的 api 来接收域的 MX 记录 - https://dns.google.com/query?name=nodeart.io 它不仅允许查询 MX 记录,还允许查询 A 记录。 正确的流程是解析 MX 记录 - 其中不会有 IP 地址,而是 cname。之后你需要解析那个新地址,如果有A记录,你最终会得到MTA服务器的IP地址。不幸的是,MX 可能会路由到 CNAME,该 CNAME 将路由到另一个 CNAME,该 CNAME 将路由到 A 记录。小递归。但您只能在 MX 上停止。

【讨论】:

    【解决方案2】:

    除非您实际发送,否则您无法验证电子邮件是否 100% 有效。

    确实,您可以检查 MX 记录(或 A 记录,如果未找到 MX),但您无法验证,例如,用户是否存在。

    以下是可以帮助您的服务列表:https://www.marketingtechblog.com/verify-email-lists/

    【讨论】:

    • 您可能看错了我的答案...请不要等待代码示例,而是尝试用您得到的内容进行调查;)
    • 我应该复制/粘贴您的评论:stackoverflow.com/questions/29315399/… 无论如何,这是一个检查 MX 记录的代码示例:stackoverflow.com/questions/4283103/…
    • 我不明白你关于复制/粘贴和你提供的链接的观点......检查无效的“dnsServers”
    猜你喜欢
    • 2013-01-05
    • 2013-11-20
    • 1970-01-01
    • 2012-04-07
    • 2016-11-18
    • 2011-05-11
    • 2014-06-12
    • 1970-01-01
    • 2010-12-12
    相关资源
    最近更新 更多