我正在使用python requests库来发送POST请求,我期望返回消息带有空的负载。我对返回邮件的标题感兴趣,特别是“位置”属性。我尝试了以下代码:
response=requests.request(method='POST', url=url, headers={'Content-Type':'application/json'}, data=data)
print response.headers ##Displays a case-insensitve map
print response.headers['Location'] ##blows up
奇怪的是,标题图中缺少“位置”属性。如果我在postman上尝试相同的POST请求,我会获得有效的Location属性。有没有人见过这个?这是请求库中的错误吗?
答案 0 :(得分:3)
听起来一切都在按预期工作?检查你的response.history
Requests will automatically perform location redirection for all verbs except HEAD.
>>> r = requests.get('http://github.com')
>>> r.url
'https://github.com/'
>>> r.status_code
200
>>> r.history
[<Response [301]>]
来自HTTP Location page on wikipedia:
在两种情况下,HTTP服务器的响应中返回HTTP Location头字段:
答案 1 :(得分:1)