【发布时间】:2021-06-24 08:52:24
【问题描述】:
我从邮递员 POST 请求中获取了 Python-Requests 代码,如下所示:
payload="{\"action\":\"ask\",
\"PortfolioItem\":{\"localAmount\":0,\"expiresAt\":\"2021-04-25T18:50:09+0000\",\"skuUuid\":\"9c0b30f6-d2e0-49ff-b8fa-c30a4d8d9b82\",\"localCurrency\":\"USD\",\"meta\":{\"discountCode\":\"\"}}}"
headers = {//bunch of headers}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
这很好用。但是当我尝试使用以下代码将新信息传递到有效负载时:
//initialize an empty payload object
payload = {
'action': 'ask','PortfolioItem': {'expiresAt': '',
'localAmount': 0,
'localCurrency': 'USD',
'meta': {'discountCode': ''},
'skuUuid': ''
}}
//populate it with data I want to add
payload['PortfolioItem']['expiresAt'] = expiration
payload['PortfolioItem']['localAmount'] = price
payload['PortfolioItem']['skuUuid'] = sku_id
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
我收到以下错误:{"message":"Unexpected token P in JSON at position 0"}。
我也尝试将有效负载转换为字符串,即:data=str(payload),但返回相同的错误{"message":"Unexpected token ' in JSON at position 0"}。
最重要的是,我尝试只拆分原始有效负载并将其与中间的新数据连接,但我需要传递整数值,因此连接不起作用(除非有一种方法可以在不转换我的 int 的情况下做到这一点成一个字符串)。
不知道是什么问题,任何帮助将不胜感激!
【问题讨论】:
标签: python xmlhttprequest postman