怎么知道访问一个网页地址是对的还是错的?

hanfe 2006-07-26 10:41:37
我要访问一个地址 如果出错或者不存在 返回正确或者不正确的信息给我,这个怎么搞?

就是:
比如我访问这个地址:http://www.baidu.com/aa.gif 如果这个图片存在就返回真值,如果这个图片不存在就返回假值

...全文
141 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiangsheng 2006-07-26
  • 打赏
  • 举报
回复
楼上的方法局限性太大,如果别人的网站是英文的服务器、非Windows的服务器,或者更改了404的错误信息页,都无法判断了。
TSD 2006-07-26
  • 打赏
  • 举报
回复
http://blog.csdn.net/tsd 我的BLOG有一个关于XMLHTTP的例子,通过用XMLHTTP抓取目标网址,如果返回的内容有“HTTP 错误 404 - 文件或目录未找到”的字符说明这个网址不存在!
  • 打赏
  • 举报
回复
你可以用google搜索一下 xmlhttp 判断 图片地址
qiangsheng 2006-07-26
  • 打赏
  • 举报
回复
对对对,mop就是利用了这个,当读图片出错的时候就替换成自己的图片。
jspadmin 2006-07-26
  • 打赏
  • 举报
回复
<img src="http://www.test.com/test.gif" onerror="alert('该图片不存在!');">,用这个方法不管网站是英文的服务器、非Windows的服务器,或者更改了404的错误信息页,都可以正确判断,巧妙利用了错误
jspadmin 2006-07-26
  • 打赏
  • 举报
回复
有三中方式可以探测,其中,我个人认为第三种最巧妙。

<img src="http://www.test.com/test.gif">这个图片地址是否存在.
如果不存在,隔几秒重新探测此图片,如果地址有效则,提示地址有效
<script language=javascript>
function IsExist(url)
{
x = new ActiveXObject("Microsoft.XMLHTTP")
x.open("HEAD",url,false)
x.send()
return x.status==200
}
alert(IsExist("http://www.test.com/test.gif"))
</script>


<SCRIPT language="javascript">
var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
xmlhttp.Open("GET", "http://community.csdn.net/images/CSDN_logo.GIF", false);
xmlhttp.Send();
alert(xmlhttp.responseText);
</SCRIPT>

<img src="http://www.test.com/test.gif" onerror="alert('该图片不存在!');">
Seaoh 2006-07-26
  • 打赏
  • 举报
回复
Dim n_Http, n_Type, n_Method, n_Value, n_Async
n_Type = "application/x-www-form-urlencoded"
n_Method = "POST"
n_Value = ""
n_Async = False
Set n_Http = Create("MSXML2.ServerXMLHTTP")
n_Http.setTimeouts 5000, 5000, 15000, 15000
n_Http.Open n_Method, Url, n_Async
If Cache("HTTP_HOST") = "" Then
Cache("HTTP_HOST") = Refer("HTTP_HOST", Null, 0)
End If
n_Http.setRequestHeader "CONTENT-TYPE", n_Type
n_Http.setRequestHeader "Organise", "Seaoh.com Service for Internet"
n_Http.Send(n_Value)
If n_Async Then
Exit Function
End If
If n_Http.Status = 200 And Err.Number = 0 Then
Remote = n_Http.ResponseBody
End If
Set n_Http = Nothing
Seaoh 2006-07-26
  • 打赏
  • 举报
回复
用XMLHTTP连接某的URL,然后判断返回的STATUS是否为200,为200说明成功,否则根据错误页面代码查询相应的情况,比如,为404说明文件不存在.
hanfe 2006-07-26
  • 打赏
  • 举报
回复
晕啊~~ 没有一个很好的办法吗

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧