欢迎光临
我们一直在努力

用ASP解决域名登记查询-ASP教程,ASP应用

建站超值云服务器,限时71元/月

方法一:

域名登记查询主要是通过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
dim strquery
取得需要查询的域名
strquery=request(“domainname”) & “.” & request(“ext”)

dim objsock
创建sock对象
set objsock=server.createobject(“aspsock.conn”)
设置whois服务器为rs.internic.net
select case request(“ext”)
case “com”,”net”,”org”
objsock.remotehost=”rs.internic.net”
gj=0
case “com.cn”,”net.cn”,”org.cn”
objsock.remotehost=”drop.cnnic.net.cn”
gj=1
end select
设置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>”
select case gj
case “0”
str1=inter(strresult)
response.write str1
response.write “<b>查询结果</b><br><textarea rows=10 cols=60>” & strresult & “</textarea>”
case “1”
str1=cnnic(strresult)
response.write str1
response.write “<b>查询结果</b><br><textarea rows=10 cols=60>” & strresult & “</textarea>”
end select
end if
set objsock=nothing

end if

function inter(str)
if instr(str,”no match”)=0 then
response.write “您的域名已经被注册。”
else
response.write “您的域名没有被注册。”
end if
end function

function cnnic(str)
if instr(str,”%”)=0 then
response.write “您的域名已经被注册。”
else
response.write “您的域名没有被注册。”
end if
end function
%>

</body>
</html>

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 用ASP解决域名登记查询-ASP教程,ASP应用
分享到: 更多 (0)