我试图制作 LINK FINDER 并面临2个问题
问题 1(已解决):: 无法获取重定向页面的 url
这已解决参考链接 https://stackoverflow.com/questions/20358654/serverxmlhttp-request-returing-data-but-not-returning-url-of-final-page-after-30通过使用WinHttp.WinHttpRequest.5.1
问题 2(未解决):: 无法使用WinHttp.WinHttpRequest.5.1对象EVENTS或者不回调异步请求
同步请求代码
Set req = CreateObject("WinHttp.WinHttpRequest.5.1")
req.open "GET", url, FALSE
req.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
req.send PostData
这工作正常,但如果我有多个请求,那么它会花费太多时间。
我尝试过以下异步请求代码但出现错误
Set req = CreateObject("WinHttp.WinHttpRequest.5.1")
req.open "GET", url, TRUE
req.OnReadyStateChange = GetRef("req_OnReadyStateChange")
req.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
req.send PostData
Function req_OnReadyStateChange
' do something
End Function
Code 1
Set req = CreateObject("WinHttp.WinHttpRequest.5.1","req_")
req.open "GET", url, TRUE
Function req__OnResponseFinished
' do something
End Function
req.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
req.send PostData
错误 - 远程服务器计算机不存在或不可用:“CreateObject”
Code 2
Set req = CreateObject("WinHttp.WinHttpRequest.5.1")
req.open "GET", url, TRUE
req.OnResponseFinished = GetRef("req_OnResponseFinished")
Function req_OnResponseFinished
' do something
End Function
req.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
req.send PostData
错误:对象不支持此属性或方法:'req.OnResponseFinished
Code 3
Set req = CreateObject("WinHttp.WinHttpRequest.5.1")
req.open "GET", url, TRUE
req.OnReadyStateChange = GetRef("req_OnReadyStateChange")
req.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
req.send PostData
Function req_OnReadyStateChange
' do something
End Function
在微软文档中,他们提到了WinHttp.WinHttpRequest.5.1有4个活动。
- OnError
- 响应数据可用时
- 响应完成时
- 响应开始时
但我没有如何使用此事件的示例,也无法在 ASP 中使用这些事件。
希望尽快回复...