Python 如何使用JSON正文发送POST请求?

Python 如何使用JSON正文发送POST请求?,python,json,http,post,Python,Json,Http,Post,我正在尝试发送一个POST请求。对于这个请求,我想在正文中发送一个JSON,但这不起作用,它会给出一个错误:cannotconcat str to bytes。使用JSON主体提交POST请求的正确方式是什么 考虑使用请求模块。就像下面看起来一样简单: import requests body = {"key": "value"} response = requests.post("http://<SOME_URL>", json=body) 首先需要序列化数据 data = j

我正在尝试发送一个POST请求。对于这个请求,我想在正文中发送一个JSON,但这不起作用,它会给出一个错误:cannotconcat str to bytes。使用JSON主体提交POST请求的正确方式是什么


考虑使用请求模块。就像下面看起来一样简单:

import requests

body = {"key": "value"}
response = requests.post("http://<SOME_URL>", json=body)

首先需要序列化数据

data = json.dumps(body)
data = data.encode('utf8')
conn.request("POST", "", data, headers)

请考虑使用模块:@汉索洛或至少,@胡安帕。但如果可能的话,我会同意你的要求。当一个功能完整且非常可用的高级模块请求可用时,尝试与诸如urllib之类的低级模块进行HTTP通信是浪费时间的。
data = json.dumps(body)
data = data.encode('utf8')
conn.request("POST", "", data, headers)