Python如何制作curl请求

时间:2017-07-31 22:03:59

标签: python curl

我需要帮助在Python中发出以下Curl请求:

curl --data "username=USERNAME&password=PASSWORD" --header "Authorization: Basic Y2xvdWQtYXBp" -X POST "https://ApiCallUrl/auth/token?grant_type=password" --insecure

我有以下代码:

url = 'https://referencedatacloudauth.sit.icg.citigroup.net/auth/token?grant_type=velocity_169234/securities/products?search={"Xref.CSP":"G6264VAA0"}'
data = "username=velocity_169234&password=velocity_69234"
header = {'Authorization': b'Basic' + b64encode(('cloud-api').encode('utf-8'))}
data = urlencode(dict(username='USERNAME',password='PASSWORD')).encode('ascii')

response = urlopen(Request(url, data, header))
print(response.info())

如何添加--insecure标志?

我收到此错误

    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645)>

1 个答案:

答案 0 :(得分:1)

  

curl
  -k, - organcure
  (SSL)此选项明确允许curl执行&#34; insecure&#34; SSL连接和传输。
  通过使用默认安装的CA证书捆绑包,尝试使所有SSL连接安全   考虑所有连接&#34;不安全&#34;除非使用-k / - insecure,否则将失败。

  

requests   如果将verify设置为False,请求也可以忽略验证SSL证书:

requests.get('https://kennethreitz.org', verify=False)
<Response [200]>
     

默认情况下,verify设置为True。选项验证仅适用于主机证书。

urlopen没有这样的参数。

  

注意:禁用证书验证是一种安全风险!