Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 会话中准备好的请求中的头_Python_Python Requests_Request Headers - Fatal编程技术网

Python 会话中准备好的请求中的头

Python 会话中准备好的请求中的头,python,python-requests,request-headers,Python,Python Requests,Request Headers,我正在解决一个POST请求的问题。POST数据中的一个字段似乎会影响标题。这是我的代码: s = requests.Session() post_data = {...} different_post_data = {...} post_200 = requests.Request('POST', url, data=post_data) post_404 = requests.Request('POST', url, data=different_post_data) prepped_2

我正在解决一个POST请求的问题。POST数据中的一个字段似乎会影响标题。这是我的代码:

s = requests.Session()

post_data = {...}
different_post_data = {...}

post_200 = requests.Request('POST', url, data=post_data)
post_404 = requests.Request('POST', url, data=different_post_data)

prepped_200 = s.prepare_request(post_200)
prepped_404 = s.prepare_request(post_400)

我天真地希望预先准备好的请求与我可以通过
response.request.headers
检查的请求完全相同,但它们只包含部分信息和一些cookie。我知道我遗漏了一些东西,因为当我尝试
s.send(prepped_200)
时失败了。有没有一种方法可以完全按照s.post(url,post_数据)发送的方式查看请求?

使用像Telerik Fiddler Classic(Windows)或mitm(Linux)这样的mitm代理可能是查看发送到服务器的内容的最简单方法。您是否意识到,因为您使用的是会话,所以实际发送的第二个请求可能包含第一个请求没有的cookie?此外,重定向可能会影响序列。代理将向您显示正在进行的操作。会话将保留会话上设置的头。阅读文档和源代码