1

我有这个简单的工作 curl 命令:

curl -k -d X-User=user -d X-Password=password https://12.12.12.21

这是我的例子:

import urllib2
opener = urllib2.build_opener()
opener.addheaders = [('X-User', 'user'),('X-Password', 'password')]
rr = opener.open("https://12.12.12.21")
print rr.read()

它没有按我的预期工作(结果:密码/用户名错误),你能帮我理解为什么吗?

4

1 回答 1

3

您的curl命令使用的是使用 POST 发送数据-d的标志,而不是使用标头。

如果您打算使用标题,那么您需要使用-H参数:

curl -k -H X-User=user -H X-Password=password https://12.12.12.21

这是您需要的情况下如何执行 POST 请求:

values = {'X-User' : 'user', 'X-Password' : 'password'}
data = urllib.urlencode(values)
req = urllib2.Request("https://12.12.12.21", data)
rr = urllib2.urlopen(req)
于 2012-10-15T14:44:18.623 回答