json.dumps 与flask.jsonify [英] json.dumps vs flask.jsonify

查看:40
本文介绍了json.dumps 与flask.jsonify的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不确定我是否理解 flask.jsonify 方法的目的.我尝试从中制作一个 JSON 字符串:

I am not sure I understand the purpose of the flask.jsonify method. I try to make a JSON string from this:

data = {"id": str(album.id), "title": album.title}

但是我用 json.dumps 得到的与我用 flask.jsonify 得到的不同.

but what I get with json.dumps differs from what I get with flask.jsonify.

json.dumps(data): [{"id": "4ea856fd6506ae0db42702dd", "title": "Business"}]
flask.jsonify(data): {"id":…, "title":…}

显然我需要得到一个看起来更像 json.dumps 返回的结果.我做错了什么?

Obviously I need to get a result that looks more like what json.dumps returns. What am I doing wrong?

推荐答案

flask 中的 jsonify() 函数返回一个 flask.Response() 对象,该对象已经具有与 json 响应一起使用的适当内容类型标头application/json".而 json.dumps() 方法只会返回一个编码字符串,这需要手动添加 MIME 类型标头.

The jsonify() function in flask returns a flask.Response() object that already has the appropriate content-type header 'application/json' for use with json responses. Whereas, the json.dumps() method will just return an encoded string, which would require manually adding the MIME type header.

此处查看有关jsonify() 函数的更多信息 供完整参考.

See more about the jsonify() function here for full reference.

另外,我注意到 jsonify() 处理 kwargs 或字典,而 json.dumps() 还支持列表和其他.

Also, I've noticed that jsonify() handles kwargs or dictionaries, while json.dumps() additionally supports lists and others.

这篇关于json.dumps 与flask.jsonify的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆