我有以下代码,但httplib仍然将标题'emptyheader'视为键:值对。
h = httplib.HTTPConnection("somewhere:5000")
headers = {}
headers['emptyheader'] = None
h.request('POST', '/somewhere', '', headers)
如何发送合理的请求,但使用无值的标题'emptyheader'?
答案 0 :(得分:1)
将标头值设置为''
:
headers['emptyheader'] = ''
会输出:
emptyheader: \r\n
答案 1 :(得分:0)
使用httplib无法做到这一点。 'headers'参数必须是字典。然后,httplib将标头构造为以冒号分隔的名称 - 值对。
我认为请求模块做同样的事情。
因此,作为一种选择,请尝试curl:
subprocess.call(['curl', '-i', '-H', '"emptyheader"', '"http://somewhere:5000/somewhere"'])
但是,我不确定你为什么需要它:http标头是关键:设计值对。