| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 692 人关注过本帖
标题:请问怎么检测网址是否有效?
只看楼主 加入收藏
shonken
Rank: 2
等 级:论坛游民
帖 子:116
专家分:26
注 册:2017-1-15
结帖率:90%
收藏
已结贴  问题点数:20 回复次数:6 
请问怎么检测网址是否有效?
失效的网址:http://www.

程序代码:
  lcURL="http://www./"
loHttp = CREATEOBJECT("WinHttp.WinHttpRequest.5.1")
loHttp.Open("GET", lcURL, .F.)
loHttp.SetRequestHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)")
loHttp.Send()

IF loHttp.Status = 200
    ? "网址可以访问"
ELSE
    ? "网址无法访问"
ENDIF


会出现OLE错误,有什么办法?
搜索更多相关主题的帖子: 访问 com 检测 网址 是否 
2023-08-07 18:16
yiyanxiyin
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:9
帖 子:242
专家分:1856
注 册:2023-6-29
收藏
得分:0 
怀疑控件不正常, 访问正常的网站试试呢
2023-08-07 18:23
csyx
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:火星
等 级:版主
威 望:37
帖 子:709
专家分:2848
注 册:2018-3-13
收藏
得分:0 
加个 try 不行吗?

这家伙很懒,啥也没留下
2023-08-07 18:31
csyx
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:火星
等 级:版主
威 望:37
帖 子:709
专家分:2848
注 册:2018-3-13
收藏
得分:15 
lcURL="http://www.
loHttp = CREATEOBJECT("WinHttp.WinHttpRequest.5.1")
loHttp.Open("GET", lcURL, .F.)
Try
    loHttp.Send()
    oErr = Null
Catch to oErr
EndTry
IF IsNull(oErr) and loHttp.Status = 200
    ? "网址可以访问"
ELSE
    ? "网址无法访问"
    ? oErr.Message
ENDIF

这家伙很懒,啥也没留下
2023-08-07 18:32
shonken
Rank: 2
等 级:论坛游民
帖 子:116
专家分:26
注 册:2017-1-15
收藏
得分:0 
以下是引用csyx在2023-8-7 18:32:22的发言:

lcURL="http://www.
loHttp = CREATEOBJECT("WinHttp.WinHttpRequest.5.1")
loHttp.Open("GET", lcURL, .F.)
Try
    loHttp.Send()
    oErr = Null
Catch to oErr
EndTry
IF IsNull(oErr) and loHttp.Status = 200
    ? "网址可以访问"
ELSE
    ? "网址无法访问"
    ? oErr.Message
ENDIF

可以
呃...原来我的处理错误语句放错位置了
2023-08-07 18:56
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10609
专家分:43210
注 册:2014-5-20
收藏(2)
得分:5 
try.....endtry 对OLE的0错误有可能处理不了
OLE异常处理用 ON ERROR 好点。


ON ERROR OnError()

sysError = .f.
lcURL="http://www.
loHttp = CREATEOBJECT("WinHttp.WinHttpRequest.5.1")
loHttp.Open("GET", lcURL, .F.)
loHttp.SetRequestHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)")
loHttp.Send()
if sysError
    ? "异常"
else
    ? "正常"
endif
return

FUNCTION OnError()
    sysError = .t.
    RETURN
ENDFUNC
2023-08-07 20:18
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1790
专家分:3389
注 册:2012-2-29
收藏
得分:0 
各位,学习啦,谢谢!
2023-08-08 06:22
快速回复:请问怎么检测网址是否有效?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025534 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved