在HTTP POST标头中包含会话

时间:2016-03-11 19:50:03

标签: python session cookies http-post

我需要使用Python将JSON上传到API。我有一个会话标头添加到POST请求以授权请求。会话采用以下格式:

会话=值=

我一直在尝试将它添加为python urllib2库中的标题,但是API仍然给我401未经授权。到目前为止,我这样做:

req = urllib2.Request(url)
req.add_header('Content-Type', 'application/json')
req.add_header('Set-Cookie', 'session=value=')
response = urllib2.urlopen(req, data=json.dump(data))

我一直在阅读urllib2文档以及http cookies,但我找不到通过标题发送此cookie的明确方法。请问有谁可以说明如何做到这一点? 不幸的是,对于隐私问题,我无法显示网址和Cookie。

提前致谢。

1 个答案:

答案 0 :(得分:1)

您应该使用Cookie而不是Set-Cokkie。其他人都很好

req = urllib2.Request(url)
req.add_header('Content-Type', 'application/json')
req.add_header('Cookie', 'session=value=')
response = urllib2.urlopen(req, data=json.dump(data))

当服务器响应时,它使用Set-Cookie在客户端中保留cookie,当客户端想要回调时,它只使用Cookie作为标题。