You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django无SDK集成PayPal 转换createOrder的curl为Python时报错

报错原因
  • 第一个问题是headers的格式错误:你定义h时使用逗号分隔键值字符串,生成的是Python集合(set)类型,但requests库要求headers参数传入字典类型,字典需要以键: 值的格式分隔每个配置项。requests在处理请求头时会调用传入对象的items()方法遍历键值对,集合没有该方法,直接触发了报错。
  • 第二个问题是请求体传参方式错误:你直接将Python字典传给data参数,requests会默认将其编码为表单格式,不符合PayPal接口要求的JSON请求体格式。
修正后的代码
import requests

t = gettoken()
# 调整为标准字典格式的请求头
h = {
    "Content-Type": "application/json",
    "Authorization": "Bearer " + t
}
d = {"intent": "CAPTURE","purchase_units": [{"amount": {"currency_code": "USD","value": "100.00"}}]}
# 使用json参数传递字典,requests会自动将其序列化为JSON字符串
r = requests.post('https://api-m.sandbox.paypal.com/v2/checkout/orders', headers=h, json=d).json()

内容的提问来源于stack exchange,提问作者rivercity

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 10:18:04