我希望使用python执行此操作。这是一个RESTful请求
curl -XPOST -u 'userid:password' -H
'Content-Type: application/json' -H 'X-Forwarded-For: 100.100.0.144' -k
'http://myurl
' -d ' jsonObject
到目前为止我所拥有的
import urllib2
def make_payment_request():
manager = urllib2.HTTPPasswordMgrWithDefaultRealm()
manager.add_password(None, 'https://url', 'userid', 'passwrd')
handler = urllib2.HTTPBasicAuthHandler(manager)
director = urllib2.OpenerDirector()
director.add_handler(handler)
req = urllib2.Request('https://url', headers = {'Accept' : 'application/json'})
result = director.open(req)
# To get say the content-length header
print "this is result",result
我收到的回复是None
我如何用它添加jSonobject
答案 0 :(得分:0)
使用requests
import requests
import json
url = 'http://myurl'
headers = {'X-Forwarded-For': '100.100.0.144'}
user = 'user'
password = 'sekret'
data = {'foo': 'bar'}
r = requests.post(url,
data=json.dumps(data), auth=(user,password), headers=headers)
我得到了request.exceptions.SSLError:[Errno 1] _ssl.c:504: 错误:14090086:SSL例程:SSL3_GET_SERVER_CERTIFICATE:证书 验证失败
就像网络浏览器一样,requests
会尝试验证SSL。在浏览器中,如果SSL没有验证,您会收到警告,然后您可以选择继续访问该网站。
对于requests
,您可以通过传递verify=False
来忽略SSL验证错误来实现相同目的。
r = requests.post(url, verify=False,
data=json.dumps(data), auth=(user,password), headers=headers)