微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

来自 Postman 的请求有效负载有效,但我的无效 - 意外令牌错误

如何解决来自 Postman 的请求有效负载有效,但我的无效 - 意外令牌错误

我从邮递员 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",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 的情况下做到这一点)成字符串)。 不知道出了什么问题,任何帮助将不胜感激!

解决方法

第一个是看起来像有效 JSON 的字符串,第二个是 dict。您需要将 dict 转换为 JSON。或使用:requests.request("POST",url,headers=headers,json=payload) 为您完成。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。