我尝试使用WinHTTP请求来检索VB.Net中的网页(HTTPS网站),由于某种原因它只返回部分HTML,它可以采用的字符数量有任何长度限制吗?如果是这样,我可以在第10000个字符之后获取内容吗?
相关代码在这里:
oRequest = New WinHttp.WinHttpRequest oRequest.Open("GET", sQueryURL, False) oRequest.SetTimeouts(0, 600000, 0, 0) oRequest.Send() If oRequest.Status = "200" Then Debug.Print(oRequest.ResponseText) Else End If
答案 0 :(得分:1)
自从我使用WinHttpRequest已经有一段时间了,但我相信一旦你阅读了ResponseText,WinHttpRequest就会放弃处理响应。由于您正在阅读响应,我猜您在打印ResponseText时尚未达到完整响应!
我认为您有两种选择:
WinHttpRequest.WaitForResponse()
等待整个回复准备就绪WinHttpRequest.ResponseStream
以块的形式处理响应(您需要将块从字节转换为可读文本)我不知道你是否在使用VB.Net,但如果你是:考虑使用System.Web.HttpRequest。界面几乎相同,您可以更轻松地找到工作示例和建议。