CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  ASP

SOS!!!求教域名查询系统用asp如何写?用的是什么原理??(在线等待!!!谢谢!!!)

楼主xiefeng(守望者)2003-12-03 16:55:02 在 Web 开发 / ASP 提问

求教域名查询系统用asp如何写?用的是什么原理?? 问题点数:100、回复次数:8Top

1 楼xiefeng(守望者)回复于 2003-12-03 16:55:30 得分 0

UP!Top

2 楼clon(鱼翔浅底,鹰击长空)回复于 2003-12-03 17:06:17 得分 10

帮你顶Top

3 楼a_zhe_20(努力工作多赚钱)回复于 2003-12-03 17:19:10 得分 80

使用xmlhttp为网站增加域名查询功能      
     
  2002-09-17·   ·fsdos··yesky  
   
     
    当我们准备建立一个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上运行通过。实际使用过程中,可以把上述代码拷贝到自己网页中,经过简单的页面编辑,就可在自己的网页中增加在页面无刷新情况下的域名查询功能了,初看上去,还真的有点象专业的域名注册服务商网站提供的服务了。  
     
  Top

4 楼xiefeng(守望者)回复于 2003-12-03 17:30:13 得分 0

谢谢!Top

5 楼xiefeng(守望者)回复于 2003-12-03 23:27:39 得分 0

谢谢!!!a_zhe_20(兜兜裤)  
  不过我测试了一下好像不行,点完按钮没有任何反应,状态栏提示网页代码有错.是不是你贴漏了什么代码?Top

6 楼xiefeng(守望者)回复于 2003-12-03 23:29:25 得分 0

在"strFind2"和"strFind4"之间是不是还有代码?Top

7 楼yllaji(51FE.COM)回复于 2003-12-04 00:10:50 得分 10

你去  
   
  www.dns.com.cn   作域名代理的话  
   
  会自动   给你一套类似的系统   帮你注册、查询域名。可以任意嵌入你的网站Top

8 楼yllaji(51FE.COM)回复于 2003-12-04 00:11:13 得分 0

你去  
   
  www.dns.com.cn   作域名代理的话  
   
  会自动   给你一套类似的系统   帮你注册、查询域名。可以任意嵌入你的网站  
   
  演示    
   
  http://www.tonydns.comTop

相关问题

  • 哪位有了解域名查询与抢注的工作原理呢?
  • 域名查询
  • asp中如何实现域名查询功能?
  • asp查询结果分页的问题,原理是什么?
  • 域名查询问题,急.
  • 域名查询的问题!
  • 关于域名查询
  • /////////////如何实现域名查询(包括中文域名)?/////////////
  • 中文域名的查询问题
  • 域名查询的数据库接口?

关键词

  • .net
  • 域名
  • 查询
  • web服务器
  • 服务器
  • 原理
  • 客户
  • 数据
  • 数据库
  • 网页

得分解答快速导航

  • 帖主:xiefeng
  • clon
  • a_zhe_20
  • yllaji

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo