我正在使用此功能获取我请求的网址的响应。 这个函数没有发生任何错误,但它返回的值不是我想要的。
以下是Firefox的回复:
该函数返回HTML部分,但不返回nextCursorEndpoint
部分。我想得到nextCursorEndpoint
部分。
我的代码:
Private Function GET_Request(ByVal URL As String, ByVal CC As CookieContainer) As String
Try
Dim req As HttpWebRequest = DirectCast(WebRequest.Create(URL), HttpWebRequest)
With req
.Method = "GET"
.CookieContainer = CC
.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0"
End With
Using response As WebResponse = req.GetResponse()
Using resStream As Stream = response.GetResponseStream()
Using streamReader As New StreamReader(resStream, Encoding.UTF8)
Return streamReader.ReadToEnd()
End Using
End Using
End Using
Catch ex As Exception
InvokeIfRequired(ListBox2, DirectCast(Sub() ListBox2.Items.Add("[" & TimeString & "]:" & ex.Message), MethodInvoker))
Return GET_Request(URL, CC)
End Try
End Function
答案 0 :(得分:2)
[基于上述问题中的评论......]
问题中的代码不进行任何类型的过滤。所以我强烈怀疑服务器没有返回您期望的内容。很可能是这个问题的罪魁祸首可能就是请求中发送的标题。
您希望在调试过程中仔细检查这些内容。 Firefox可能只是发送不同于您的代码发送的标头,并且该资源的服务器端逻辑可能会有不同的响应。
例如:如果Accept
标题不同和/或缺失,那么可能会通知服务器提供不同类型的响应。