python - 在 ChartMogul API 上使用 Python 请求

标签 python curl python-requests

我尝试将 ChartMogul 的 API 与 Python 结合使用。由于他们没有客户端库,所以我需要自己做。这是 API 示例:

curl -X POST "https://api.chartmogul.com/v1/import/customers" \
     -u YOUR_ACCOUNT_TOKEN:YOUR_SECRET_KEY \
     -H "Content-Type: application/json" \
     -d '{
          "data_source_uuid": "ds_fef05d54-47b4-431b-aed2-eb6b9e545430",
          "external_id": "cus_0001",
          "name": "Adam Smith",
          "email": "adam@smith.com",
          "country": "US",
          "city": "New York"
         }'

这就是我所做的:

import requests

url     = "https://api.chartmogul.com/v1/import/customers"
data_source_uuid = "the uuid I get from my api data source"
token = 'my token'
key= 'my key'
payload = {
          "data_source_uuid": data_source_uuid,
          "external_id": "cus_0001",
          "name": "Adam Smith",
          "email": "adam@smith.com",
          "country": "US",
          "city": "New York"
         }

headers = {"Content-Type": "application/json"}
res = requests.post(url,
    auth=(token, key),
    data=payload,
    headers=headers)

但是我收到了 400 响应(错误请求)。这是什么问题?

最佳答案

尝试

data=json.dumps(payload),

而不是

data=payload,

关于python - 在 ChartMogul API 上使用 Python 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40377684/

相关文章:

linux - 如何在 Shell 中使用 CURL 在支持 CSRF 的网站上通过 https 上传文件?

python - 如何在 Python 中发出异步 HTTP GET 请求并将响应对象传递给函数

java - Curl 到 Java httpclient

node.js - Curl 和 Postman 给出不同的响应?

python - 如何为请求库创建嵌套参数

python - 使用python登录网站

python - 如何绘制具有逆变换(实际)值的 graphviz 决策树?

python - Matplotlib 日期操作,使年刻度每 12 个月出现一次

Python 函数胶囊

python - 这行Python代码是什么意思?