首页 后端开发 XML/RSS教程 使用xmlhttp为网站增加域名查询功能详细介绍

使用xmlhttp为网站增加域名查询功能详细介绍

Mar 07, 2017 pm 04:16 PM
网站

  当我们准备建立一个Web站点时,就必须向域名登记机构申请一个Internet域名,因此,我们通常希望了解自己准备使用的域名是否已经被注册,这时,可以访问NIC站点http://www.nic.net,点击"whois"链接后输入需查询的域名,就可以得到我们需要的结果。

  WHOIS服务器为 .com、.net 和 .org 的国际顶级域名的查询返回全部的 whois 数据,包括网站域名注册人、管理合约、联系方式(电话、电子邮件、地址)、帐单联络、技术支持和域名服务器信息,对于用户了解一个网站的基本情况很有帮助。在很多域名注册服务商的网站中,通常都有whois(域名查询)的高级服务,但个人网站因为不具备域名注册服务商的资格和数据,所以在一般条件下无法提供whois服务。

  其实,利用xmlHTTP协议,我们每个人都可以在自己的个人网站中提供域名详细情况查询(WHOIS)服务,本文介绍了如何使用asp结合xmlhttp编程来实现这个功能。 

  一、原理:

  原理非常简单,域名的查询主要是基于RFC 954提供的WHOIS协议。在实现过程中,我们通过自己的WEB服务器访问NIC站点的WHOIS数据库服务器,从WHOIS数据库中查询我们所需要的内容,然后通过ASP组合成网页回送给客户端。

  同时,我们使用xmlHttp协议实现客户端网页无刷新效果以及向服务端提出检索WHOIS数据的要求。

  具体流程为:客户端通过xmlhttp提出域名查询要求-->WEB服务器中的ASP侦听页接受请求后使用xmlhttp向WHOIS服务器发送检索命令-->WHOIS数据库执行查询操作,返回结果给我们自己的WEB服务器(html形式)-->WEB服务器接收到内容后,立即将结果传送给客户端->客户端浏览器使用vbscript过滤掉HTML多余部分,挑选出whois数据显示出来。

  二、ASP XmlHttp编程简述:

  1、客户端html页面:

<script language="vbscript">
 Sub submit1_onmouseup '当点击“查询”按钮时触发;
  Dim objXML, objXSL, objfso,strFile, strFileName, strXSL,strURL,TheForm
  Set TheForm = Document.Wordfind
  window.status="正在检索数据···"
  strURL="dns.asp"
  Set objXML = CreateObject("Microsoft.XMLHTTP") '创建MS的XMLHTTP组件;
  stra = "submit=submit&fqdn="&TheForm.words.value
  objXML.Open "post",strURL,false '采用Post提交方式;
  objXML.setrequestheader "content-length",len(stra)
  objXML.setrequestheader "content-type","application/x-www-form-urlencoded"
  objXML.send stra ' 发送信息
  xmlGet = objXML.responseText '稍等片刻后,得到服务器端传回来的结果;
  if instr(1,xmlGet,"This is not a valid .com .net .org .info or .biz domain  name",1)<1 and len(trim(xmlGet))>100 then 
   if instr(1,xmlGet,"This domain is available",1)<1 then 
    if instr(1,xmlGet,"Registrant:",1) then 
     strFind1 =instr(1,xmlGet,"Registrant:",1)
    else 
     strFind1 = instr(1,xmlGet,"<PRe><FONT face=""Verdana, Arial",1)+65 
strFind2 = instr(1,xmlGet,"</FONT></pre>",1)
     strFind4=strFind2-strFind1
     sHTML = mid(xmlGet,strFind1,strFind4)
     TheForm.comments.value="查询结果:"+chr(13)+chr(10)+sHTML
     window.status="查询结果:该域名已被占用"
   else
    TheForm.comments.value="恭喜你,此域名可用!" 
    window.status="查询结果:该域名仍然处于可用状态!" 
   end if
  else
   TheForm.comments.value= "无效的国际顶级域名!请输入以(.com .net .org .info or .biz)结尾的国际域名, 例如sun.com"
   window.status="无效的国际顶级域名!请输入以(.com .net .org .info or .biz)结尾的国际域名, 例如CCTV.com"
  end if
  Set objXML = Nothing
 end sub 
</script>

<html><head><title>XMLHTTP之域名查询篇</title></head>
<body bgColor=#cccca3>
<form method="post" name=wordfind onsubmit="javascript:return false">
请输入域名名称:<input type="text" value="cctv.com" name="words" size="69">
<input type="submit" value="查询" id=Submit1 name=Submit1>
<TEXTAREA name=comments readonly rows=10 cols=76></TEXTAREA>
</form></body></html>
登录后复制

2、服务器端ASP程序:

<%dim xmlGet,objXML, objXSL, objFSO,strFile, strFileName, strXSL,strURL
 xmlGet=""
 if len(trim(Request.form("fqdn"))) > 1 then
  strURL="http://www.domainbank.net/whoisresults_gen.cfm?show=1"
   'WhoIS服务器的地址
  Set objXML = CreateObject("Microsoft.XMLHTTP") '创建MS的XMLHTTP组件
  stra = "submit=submit&fqdn="&trim(Request.form("fqdn"))
  objXML.Open "post",strURL,false
  objXML.setrequestheader "content-length",len(stra)
  objXML.setrequestheader "content-type","application/x-www-form-urlencoded"
  objXML.send stra ' 发送信息到WhoIs数据库服务器;
  xmlGet = objXML.responseText ' 取得域名服务器返回的信息
  Set objXML = Nothing
 end if
 response.write xmlGet '返回结果给客户端
%>
登录后复制

在上述过程中,可以发现我们自己的WEB服务器中的ASP程序其实只起到一个中间传递的作用,在实际应用中,也可以省去这个中间层,使用vbscript通过xmlhttp直接向WHOIS数据库发送和接收数据。不过这样的话,可能会因为IE中“通过(其它)域访问数据资源”被禁用(默认)而引起权限不够导致无法执行,所以该省去ASP中间层的方法并不太通用。 

  本程序在基于Windows2000平台的IIS5.0和IE6.0上运行通过。实际使用过程中,可以把上述代码拷贝到自己网页中,经过简单的页面编辑,就可在自己的网页中增加在页面无刷新情况下的域名查询功能了,初看上去,还真的有点象专业的域名注册服务商网站提供的服务了。

以上就是使用xmlhttp为网站增加域名查询功能详细介绍的内容,更多相关内容请关注PHP中文网(www.php.cn)!


本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1653
14
CakePHP 教程
1413
52
Laravel 教程
1305
25
PHP教程
1251
29
C# 教程
1224
24
有什么学c语言的网站 有什么学c语言的网站 Jan 30, 2024 pm 02:38 PM

学c语言的网站:1、C语言中文网;2、菜鸟教程;3、C语言论坛;4、C语言帝国;5、脚本之家;6、天极网;7、红黑联盟;8、51自学网;9、力扣;10、C Programming。详细介绍:1、C语言中文网,这是一个专门为初学者提供C语言学习资料的网站,内容丰富,包括基础语法、指针、数组、函数、结构体等多个模块;2、菜鸟教程,这是一个综合性的编程学习网站等等。

如何使用任务计划程序打开网站 如何使用任务计划程序打开网站 Oct 02, 2023 pm 11:13 PM

您是否每天在大约相同的时间频繁访问同一网站?这可能会导致花费大量时间打开多个浏览器选项卡,并在执行日常任务时使浏览器充满混乱。好吧,打开它而不必手动启动浏览器怎么样?这非常简单,不需要您下载任何第三方应用程序,如下所示。如何设置任务计划程序以打开网站?按键,在搜索框中键入任务计划程序,然后单击打开。Windows在右侧边栏上,单击“创建基本任务”选项。在名称字段中,输入要打开的网站的名称,然后单击下一步。接下来,在触发器下,单击时间频率并点击下一步。选择您希望活动重复多长时间并点击下一步。选择启

将将网站转换为独立的 Mac 应用程序的方法 将将网站转换为独立的 Mac 应用程序的方法 Oct 12, 2023 pm 11:17 PM

在macOSSonoma和Safari17中,您可以将网站变成“网络应用程序”,这些应用程序可以位于Mac的扩展坞中,并且可以像任何其他应用程序一样访问,而无需打开浏览器。继续阅读以了解其工作原理。多亏了Apple的Safari浏览器中的新选项,现在可以将您经常访问的互联网上的任何网站变成一个独立的“网络应用程序”,位于Mac的扩展坞中,随时供您访问。Web应用程序与任何应用程序一样与任务控制和舞台管理器配合使用,也可以通过Launchpad或SpotlightSearch打开。如何将任何网站变

如何在 Edge 中阻止对网站的访问 如何在 Edge 中阻止对网站的访问 Jul 12, 2023 am 08:17 AM

有时,出于多种原因,我们希望在MicrosoftEdge上阻止某些网站,无论是出于家长控制,时间管理,内容过滤,甚至是安全问题。一个常见的动机是提高生产力并保持专注。通过阻止分散注意力的网站,人们可以创造一个有利于工作或学习的环境,最大限度地减少潜在的干扰。最后,内容过滤对于维护安全和尊重的在线环境非常重要。阻止包含露骨、冒犯性或令人反感内容的网站在教育或专业环境中尤其重要,在这些环境中,维护适当的标准和价值观至关重要。如果您可以与这种情况相关,那么本文适合您。下面介绍了如何在Edge中阻止对网

解决Python网站访问速度问题,使用索引、缓存等数据库优化方法。 解决Python网站访问速度问题,使用索引、缓存等数据库优化方法。 Aug 05, 2023 am 11:24 AM

解决Python网站访问速度问题,使用索引、缓存等数据库优化方法在开发和维护Python网站的过程中,经常会遇到网站访问速度慢的问题。为了提高网站的响应速度,我们可以使用一些数据库优化方法,如索引和缓存。本文将介绍如何使用这些方法来解决Python网站访问速度问题,并提供相应的代码示例供参考。一、使用索引优化数据库查询索引是数据库中数据的快速查找结构,可以大

如何从iPhone的Safari中删除经常访问的网站 如何从iPhone的Safari中删除经常访问的网站 Jul 10, 2023 pm 04:41 PM

默认情况下,大多数iPhone用户在iPhone上使用Safari浏览器。他们在Safari浏览器上浏览和访问不同类型的网站。一些iPhone用户报告说,他们厌倦了在iPhone上启动Safari浏览器后在初始屏幕上看到经常访问的网站。为了更改初始屏幕的外观,您应该对其进行编辑。如果您希望从Safari浏览器中删除经常访问的网站,我们在这里提供一些简单的步骤,解释如何轻松做到这一点。如何从iPhone的Safari中删除经常访问的网站步骤1:您应该首先在iPhone上启动Safari浏览器。第2

快速解决Go语言网站访问速度问题的7种有效方法 快速解决Go语言网站访问速度问题的7种有效方法 Aug 05, 2023 pm 04:43 PM

快速解决Go语言网站访问速度问题的7种有效方法随着互联网的快速发展,网站访问速度对于用户体验至关重要。Go语言作为一种高效性能的编程语言,其在构建高并发网络应用方面有着广泛应用。然而,在实际开发中,我们可能会遇到Go语言网站访问速度慢的问题。本文将介绍7种有效方法来解决这个问题,并提供相应的代码示例。使用缓存缓存是最常见也是最有效的提升网站访问速度的方法之一

php的网站有哪些 php的网站有哪些 Jul 27, 2023 am 10:54 AM

php的网站:1、Facebook,世界上最大的社交媒体平台之一;2、WordPress,开源的内容管理系统,用于快速创建和管理各种类型的网站;3、Magento,功能强大的电子商务平台,用于创建和管理在线商店;4、Joomla,流行的开源内容管理系统,用于构建各种类型的网站;5、Wikipedia,免费的在线百科全书,提供各种主题的知识和信息;6、Digg,社交新闻网站等等。

See all articles