我正在使用REST API,需要返回一个包含值的JSON
但是,我需要payload变量的items
来显示cart_item
中的所有项。
我有这个:
payload = {
"items": [],
}
我试过了,但我不知道如何将其放入有效负载的items
中:
for cart_item in cart_items:
item = [
{
"reference_id": f"{cart_item.sku}",
"name": f"{cart_item.product.name}",
"quantity": cart_item.quantity,
"unit_amount": cart_item.product.price
},
]
我要你回我电话:
payload = {
"items": [
{
"reference_id": "SKU49FS20DD",
"name": "Produto 1",
"quantity": 1,
"unit_amount": 130
},
{
"reference_id": "SKU42920SSD",
"name": "Produto 2",
"quantity": 1,
"unit_amount": 100
}
],
}
response = requests.request(
"POST",
url,
headers=headers,
json=payload
)
我不知道是否需要将JSON
中的内容传递到字典进行更改,然后再次将其发送到JSON
。
2条答案
按热度按时间xxe27gdn1#
不要尝试一次创建一个项目,只需使用解析直接填充
payload['items']
:另一个可能的改进是关于
requests
的,可以使用requests.post(...)
来代替requests.requests('POST' ...)
。最后,如果API确实需要
json
来拥有有效的JSON
字符串,请使用json.dumps
来转换它。综合考虑:
即使我几乎百分之百地肯定
requests.post()
会做正确的事情,如果你只是通过payload
,就像在json=payload
中一样。nuypyhwy2#
您只是缺少列表上的“append()“方法,以及从Python list & dict to a JSON string的转换:
但是在www.example.com中,“json”参数不需要字符串requests.post,因此可以保留