当通过请求将POST请求传递到网站时,它无法完成并将无限期等待。在
我回顾了Fiddler中的行为,可以看到POST请求通过302
重定向成功返回。但是,请求将继续等待,并且永远不会继续,尽管数据包已返回。在
我被困在如何诊断这一点,因为我没有得到可靠的错误和包似乎返回,任何帮助将不胜感激。在
post请求的构造如下:
loginData = 'data=45B892A0F9C127FB0A052CB&cid=1000'
s.post(url, verify=rVerify, headers=headers, data=loginData)
我尝试过允许重定向为真和假,但没有成功。在
以下是Fiddler中的请求和响应:
更新标头详细信息:
^{pr2}$更新:
您可以尝试使用POST对象手动重定向302返回的下一个URL。在
302应该在报头中返回一个URL作为“Location”的值进行重定向。如上所示,您可以在响应对象字典中找到它。在
来源:https://en.wikipedia.org/wiki/HTTP_302,https://2.python-requests.org/en/master/api/#requests.Response
所以问题似乎出在Python3和httplib库无法解析从服务器返回的头。在
问题是:https://github.com/kennethreitz/requests/issues/3098
为了解决这个问题,我已经改为python2,它不需要以相同的方式解析头。在
相关问题 更多 >
编程相关推荐