且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

网址存在吗?

更新时间:2022-12-16 21:36:44

http://www.aspfaq.com/2173 >

-

请发布DDL,样本数据和所需结果。

参见 http://www.aspfaq.com/5006 获取信息。



Henrik< no@email.dk>写在留言中

news:42 *********************** @ news.dk.uu.net ...
http://www.aspfaq.com/2173

--
Please post DDL, sample data and desired results.
See http://www.aspfaq.com/5006 for info.


"Henrik" <no@email.dk> wrote in message
news:42***********************@news.dk.uu.net...


我怎么知道网址是否存在?我想要的是这样的函数:

如果UrlExists(http://www.test.com/test.html")T母......
Response.Write(是啊!!)
其他
Response.Write(无文件: - (")
结束如果

任何人都可以帮忙吗?

/ Henrik
Hi

How do I find out if an url exists? Whar I want is a function like this:

If UrlExists("http://www.test.com/test.html") Then
Response.Write("Yeah!!")
Else
Response.Write("No file :-(")
End If

Can anyone help?

/Henrik



" Henrik" &LT; no@email.dk>在消息中写道

news:42 *********************** @ news.dk.uu.net ...
"Henrik" <no@email.dk> wrote in message
news:42***********************@news.dk.uu.net...


如何确定网址是否存在?我想要的Whar是这样的函数:

如果UrlExists(" http://www.test.com/test.html")那么
Response.Write(是的! !)
其他
Response.Write(无文件: - (")
结束如果

任何人都可以帮忙吗?

/ Henrik
Hi

How do I find out if an url exists? Whar I want is a function like this:

If UrlExists("http://www.test.com/test.html") Then
Response.Write("Yeah!!")
Else
Response.Write("No file :-(")
End If

Can anyone help?

/Henrik



这会有帮助吗?关注自动换行。


函数UrlExists(URL)

On Error Resume Next

Err.Clear

Dim b

使用Server.CreateObject(" Microsoft.XMLHTTP")

。打开GET,URL,False

。发送

b = .ResponseBody

如果Err.Number< > 0或.Status<> 200然后

Fetch = False

退出功能

结束如果

结束

Fetch = Err.Number = 0

结束功能

我认为该对象可能因Windows版本而异:


CreateObject(" Microsoft.XMLHTTP")

CreateObject(" MSXML2.ServerXMLHTTP" ;)

CreateObject(" MSXML2.ServerXMLHTTP.3.0")

因此,以下可能会有效(未经测试):


函数UrlExists(URL)

On Error Resume Next

Err.Clear

Dim booXML

booXML =错误

Dim strXML

Dim objXML

设置objXML = Server.CreateObject(" Microsoft.XMLHTTP")

如果Err.Number = 0则

booXML = True

否则

设置objXML = Server.CreateObject(" MSXML2.ServerXMLHTTP")

如果Err.Number = 0则

booXML = True

否则

设置objXML = Server.CreateObject( MSXML2.ServerXMLHTTP.3.0)

如果Err.Number = 0那么

booXML = True

结束如果

结束如果

Err.Clear

结束如果

objXML.Open" GET",URL,False

objXML.Send

strXML = .ResponseText

如果Err.Number<> 0或objXML.Status<> 200然后

Fetch = False

退出函数

结束如果

Fetch = Err.Number = 0

结束功能


Will this help? Watch for word-wrap.

Function UrlExists(URL)
On Error Resume Next
Err.Clear
Dim b
With Server.CreateObject("Microsoft.XMLHTTP")
.Open "GET",URL,False
.Send
b = .ResponseBody
If Err.Number <> 0 Or .Status <> 200 Then
Fetch = False
Exit Function
End If
End With
Fetch = Err.Number = 0
End Function
I think that the object may vary by Windows version:

CreateObject("Microsoft.XMLHTTP")
CreateObject("MSXML2.ServerXMLHTTP")
CreateObject("MSXML2.ServerXMLHTTP.3.0")
So perhaps the following will work (untested):

Function UrlExists(URL)
On Error Resume Next
Err.Clear
Dim booXML
booXML= False
Dim strXML
Dim objXML
Set objXML = Server.CreateObject("Microsoft.XMLHTTP")
If Err.Number = 0 Then
booXML = True
Else
Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP")
If Err.Number = 0 Then
booXML = True
Else
Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0")
If Err.Number = 0 Then
booXML = True
End If
End If
Err.Clear
End If
objXML.Open "GET",URL,False
objXML.Send
strXML = .ResponseText
If Err.Number <> 0 Or objXML.Status <> 200 Then
Fetch = False
Exit Function
End If
Fetch = Err.Number = 0
End Function


>使用Server.CreateObject(Microsoft.XMLHTTP)


FYI,这个不建议用于ASP ... MSXML2.ServerXMLHTTP是

更安全。
> With Server.CreateObject("Microsoft.XMLHTTP")

FYI, this one isn''t recommended for use from ASP... MSXML2.ServerXMLHTTP is
much safer.