在使用json.dumps()格式化响应数据时报错TypeError: Object of type Response is not JSON serializable
Posted 圆觉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在使用json.dumps()格式化响应数据时报错TypeError: Object of type Response is not JSON serializable相关的知识,希望对你有一定的参考价值。
今天在处理接口返回数据格式化的时候报错:TypeError: Object of type Response is not JSON serializable。响应的对象不可序列化
解决:
打印出它响应结果是什么类型,发现是个对象。
然后先把响应结果转为json,再去格式化响应内容。
如下:
import requests import json url = \'https://api.apishop.net/common/weather/get15DaysWeatherByArea\' apikey = \'chgaxvsf88f3858a15fa4426f4cbdd4d2a02b92ee0747f3\' area = "重庆" areaID = "101040100" # TODO apikey前面有引号,后面就不用了 data = { "apiKey":apikey, "area":area, "areaID":areaID, } def send_post(url,data,areaID): result = requests.post(url,data,areaID) assign = result.json() # todo indent缩进空格间距,sort_keys按照key来排序,ensure_ascii解码显示中文 return json.dumps(assign,indent=4,sort_keys=True,ensure_ascii=False) #格式化返回内容 print(send_post(url,data,areaID))
以上是关于在使用json.dumps()格式化响应数据时报错TypeError: Object of type Response is not JSON serializable的主要内容,如果未能解决你的问题,请参考以下文章
python json.dumps()函数输出json格式,使用indent参数对json数据格式化输出