如何在python中使用https连接?

时间:2012-10-15 14:33:10

标签: python

我有这个简单的工作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()

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

1 个答案:

答案 0 :(得分:3)

您的curl命令正在使用-d标记sends the data using POST,而不使用标题。

如果您打算使用标题,则需要使用-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)