gpt4 book ai didi

python - 如何在 Python 中提供 HTTP post 请求时在 Json 对象中传递变量

转载 作者:可可西里 更新时间:2023-11-01 15:27:14 25 4
gpt4 key购买 nike

我正在尝试将一个 json 对象传递到我接受 JSON 数据的 URL 之一。

下面的代码有效:

import requests

import json

payload='{"message": "hello"}'
headers = {'content-type': 'application/json', 'Accept-Charset': 'UTF-8'}
r = requests.post(url, data=payload, headers=headers)

r.text 给我“你好”

但是当我试图传递变量时

s="hello"
payload='{"message":' +str(s)+ '}'
headers = {'content-type': 'application/json', 'Accept-Charset': 'UTF-8'}
r = requests.post(url, data=payload, headers=headers)

上述方法无效。当我尝试以 JSON 格式加载时,它也向我抛出错误

payload=json.loads(payload)
JSONDecodeError: Expecting value: line 1 column 12 (char 11)

我还想将 b'blahblah' 作为 JSON 消息传递。由于传递字符串对我不起作用,所以我没有尝试传递字节格式。

请多多指教

最佳答案

您应该在 JSON 对象中的字符串周围包含双引号:

payload='{"message":"' +str(s)+ '"}'

这样 payload 就会变成 '{"message": "hello"}'

否则 payload 将变成 '{"message": hello}' 与您当前的代码。

关于python - 如何在 Python 中提供 HTTP post 请求时在 Json 对象中传递变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52325727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com