问题:
在使用flask,向前端传json数据时,发现只有用jsonify模块传出的json数据才能被识别,其他的都不行。
表现
火狐会把json进行格式化处理。
其他json模块
利用自带的及simplejson等json模块封装json数据,传给火狐,并没有识别为json数据。
服务端代码:
return simplejson.dumps(
{
'code': 0,
'msg': 'haha',
'count': len(data),
'data': data # [convert_to_builtin_type(d) for d in rs]
}
)
如图:
响应头信息:
显示这是文本数据。
jsonify模块
代码:
rs = ({
'code': 0,
'msg': 'haha',
'count': len(data),
})
return jsonify(rs)
浏览器可以识别:
响应头
content-type类型变成了json
不能识别为json,就无法使用jq等前端工具对数据处理。我试过了的。
自己设置响应头信息:
return simplejson.dumps({xxx}), 200, {'Content-Type': 'application/json'}