`
jsntghf
  • 浏览: 2489444 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

验证邮箱地址中的主机名的合法性

阅读更多

从所谓的电子邮箱地址中获取主机名(test@gmail.com中的gmail.com)并进行DNS查找,检查该主机名是否接收电子邮件。具有MX DNS记录的主机名被设置为接收邮件。

 

下面给出一段验证邮箱地址中的主机名的合法性的代码。

 

  require 'resolv'

  def valid_email_host?(email)
    hostname = email[(email =~ /@/) + 1..email.length]
    valid = true
    begin
      Resolv::DNS.new.getresource(hostname, Resolv::DNS::Resource::IN::MX)
    rescue Resolv::ResolvError
      valid = false
    end
    return valid
  end

   

下面是示例:

 

valid_email_host?('test@gmail.com')    # => true
valid_email_host?('test@example.com')  # => false
分享到:
评论

相关推荐

    C#程序开发范例宝典(第2版).part13

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

    C#程序开发范例宝典(第2版).part08

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

    C#程序开发范例宝典(第2版).part02

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

    C#程序开发范例宝典(第2版).part12

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

    McAfee 8.0 简体中文

    对话框和按访问扫描信息对话框中显示检测到的病毒的源 IP 地址。 - 阻挡(按访问扫描)。 使用此功能可以阻挡在共享文件夹中放置了含有已感染病毒文件的远程计 算机的进一步访问。您可以指定阻挡这些...

    asp.net知识库

    利用反射实现ASP.NET控件和数据实体之间的双向绑定,并且在客户端自动验证输入的内容是否合法 asp.net报表解决方法 SQLDMO类的使用 SQL过程自动C#封装,支持从表到基本存储过程生成 使用SQLDMO控制 SQL Server 使用SQL...

    Delphi开发范例宝典目录

    实例273 取得网络中的SQL服务器名 351 8.5 数据库维护 352 实例274 数据库登录配置 352 实例275 SQL Server数据库的备份和恢复 353 实实276 数据库附加、分离 355 实例277 附加数据库和保存连接信息 357...

    C#.net_经典编程例子400个

    130 实例095 使用ErrorProvider组件验证文本框输入 130 实例096 利用ErrorProvider组件查看数据集中的错误 132 3.3 EventLog组件 134 实例097 使用EventLog组件读写Windows系统事件日志 134 ...

    微软活动目录管理管理简明手册

    b+ v+ T d/ R在活动目录中每个对象都有一个标识名,标识名确定了对象所在的域和可以找到对象的完整路径。比如,典型的标识名包括: ) v( ^# h2 Q% P ) k( @' h3 e4 k* G+ s" i7 `CN=TOM,OU=Manager,DC=Tech,DC=...

Global site tag (gtag.js) - Google Analytics