Python发送POST请求后如何输出JSON格式的响应内容?
修改代码以展示请求状态和JSON响应数据
你的代码目前只打印了响应对象本身,所以仅输出<Response [200]>。要获取并展示完整的JSON响应,需调用响应对象的json()方法,同时可结合状态码输出明确的成功提示。另外,requests库提供了更简洁的JSON请求发送方式,无需手动序列化数据,以下是修改后的代码:
import requests import json url = 'URL HERE' data = {"email":"tim@john.com","is_permanent":True,"bvn":"12345678901","tx_ref":"VAL12","phonenumber":"08098688235","firstname":"John","lastname":"Fish","narration":"Test ACC"} # 使用json参数直接传入数据,requests会自动处理序列化与Content-Type请求头 res = requests.post( url, json=data, headers={'Authorization':'Bearer FLWSECK_TEST-2033696a107e162088cdb02f777fa44e-X'} ) # 打印请求状态信息 print(f"请求成功,状态码: {res.status_code}") # 解析并打印格式化后的JSON响应(带缩进更易读) print("响应JSON数据:") print(json.dumps(res.json(), indent=4))
关键修改说明:
- 替换
data=json.dumps(data)为json=data:requests会自动将Python字典序列化为JSON字符串,并自动设置Content-Type: application/json请求头,省去手动处理的繁琐步骤。 - 调用
res.json():将响应体的JSON字符串解析为Python可读取的字典/列表结构,方便查看内容。 - 用
json.dumps(..., indent=4):让JSON输出带缩进,结构更清晰,可读性更强。
内容的提问来源于stack exchange,提问作者Mike
相关产品推荐
相关产品推荐

