当前位置: 首页 > 图文教程 > 网络编程 > ASP > 用ASP解决域名登记查询

ASP
ASP视频教程:后台页面加入限制访问和禁用缓存功能
ASP视频教程:制作网站前台首页
ASP视频教程:备份和还原SQL Server 2000数据库
ASP实例教程:asp无限级显示分类代码
IIS无法启动错误的几种情况汇总
asp Http_Referer,Server_Name和Http_Host
ASP 调用带参数输出的COM接口
隐藏修改文件时间和文件属性的ASP脚本
ASP Crazy 模版操作类(最简单的模板类、仅提供交流)
asp 动态数组 提供Add、Insert、Remove、RemoveAt、Search等方法。
asp 取一个数的整数 但不是四舍五入,只要有小数,就取大于这个数的整数
asp 判断上传文件中是否存在危险代码
asp 获取url函数小结
ASP 调用dll及封装dll实例
asp 实现的冒泡排序程序
asp 自定义分段函数/求第N名成绩
ASP 高级模板引擎实现类
ASP 常见的连接字符串写法(access2007)
ASP向Excel导数据(图片)终结版 ASP操作Excel
ASP实现防止网站被采集代码

用ASP解决域名登记查询


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 242 ::
收藏到网摘: n/a

       用ASP解决域名登记查询
  作者:jjx,voodoo
  
  
  
  方法一:
  
  域名登记查询主要是通过whois服务器来完成的,当前比较常用的是rs.internic.net,通过它可以查询各种国际域名是否注册。whois的端口通常是43。利用winsock,你可以在asp简单的实现这个功能
  asp不同于php/jsp,winsock功能并不内置,所以必须借助第三方的winsock组件。
  这里的举例使用了serverobjects的aspsock,代码的注释比较详细,大家可以举一翻三
  aspsock不是免费的,需要$49,如果需要免费的大家可以自己封装vb6中的winsock控件
  或从这个地址下载免费的
  Xceed Winsock Library v1.1
  ftp://ftp.xceedsoft.com/pub/xceedwsl.exe
  该组件的主页是
  http://www.xceedsoft.com/
  
  whois.asp
  -------------------------------------------
  <%@ Language=VBScript %>
  <HTML>
  <HEAD>
  <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
  </HEAD>
  <BODY>
  <form action=whois.asp method=post>
  域名:www<B>.</B> <INPUT size=8 name=domainname value="<% =request("domainname") %>">. <SELECT name=ext> <OPTION
  selected>com</OPTION> <OPTION>net</OPTION> <OPTION>org</OPTION>
  </SELECT>
  <INPUT class=input1 type=submit value=域名查询 name=Submit>
  </form>
  
  <%
  dim strResult
  if Request.ServerVariables("request_method")="POST" THEN
  dim strQuery
  '取得需要查询的域名
  strQuery=request("domainname") & "." & request("ext")
  
  dim objSock
  '创建sock对象
  Set objSock=Server.CreateObject("Aspsock.conn")
  '设置whois服务器为rs.internic.net
  objSock.RemoteHost="rs.internic.net"
  '设置whois服务器端口为43
  objSock.Port=43
  '设置操作的超时为60秒
  objSock.TimeOut=60
  '打开与remotehost的连接,返回真为成功
  if objSock.Open then
  '发出查询 WriteLn表示用vbCrlf终结(strQuery & vbCRlf)
  objSock.WriteLn strQuery
  '读取返回值,最大长度为65535
  strResult=objSock.ReadBytesAsString(65535)
  '关闭连接
  objSock.Close
  '打印查询结果,你可以需要对此作些处理
  Response.Write "<b>查询结果</b><br><textarea rows=10 cols=60>" & strResult & "</textarea>"
  end if
  Set objSock=Nothing
  
  end if
  %>
  
  </BODY>
  </HTML>
  
  利用winsock可以完成许多asp不太可能完成的事情,比方像网易一样真正无刷新的聊天室,大家仔细研究研究吧
  
  方法二:
  
  <%@ Language=VBScript %>
  <HTML>
  <HEAD>
  <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
  </HEAD>
  <BODY>
  <form action=whois.asp method=post>
  域名:www<B>.</B> <INPUT size=8 name=domainname value="<% =request("domainname") %>">. <SELECT name=ext>
  <OPTION selected>com</OPTION>
  <OPTION>net</OPTION>
  <OPTION>org</OPTION>
  <OPTION>com.cn</OPTION> <OPTION>net.cn</OPTION> <OPTION>org.cn</OPTION>
  </SELECT>
  <INPUT class=input1 type=submit value=域名查询 name=Submit>
  </form>
  
  <%
  dim strResult
  if Request.ServerVariables("request_method")="POST" THEN
  di