Flask中jsonify和json.dumps用法以及区别(简单案例)[通俗易懂]

Flask中jsonify和json.dumps用法以及区别(简单案例)[通俗易懂]环境:python3.6,Flask1.0.3flask提供了jsonify函数供用户处理返回的序列化json数据,而python自带的json库中也有dumps方法可以序列化json对象.其二者的区别,写个简单的案例实测一下便见分晓。fromflaskimportFlaskfromflaskimportjsonifyimportjsonapp=F…

大家好,又见面了,我是你们的朋友全栈君。

环境:python3.6,  Flask1.0.3

 

flask提供了jsonify函数供用户处理返回的序列化json数据,

而python自带的json库中也有dumps方法可以序列化json对象.

其二者的区别,写个简单的案例实测一下便见分晓。

from flask import Flask
from flask import jsonify
import json

app=Flask(__name__)
app.config['JSON_AS_ASCII'] = False

# 随便定义个json字典
dic={"a":1,"b":2,"c":"你好"}
@app.route('/jsonify')
def jsonifys():
    # Content-Type: application/json
    return jsonify(dic)

@app.route('/jsondumps')
def jsondumps():
    # Content-Type: text/html; charset=utf-8
    return json.dumps(dic,ensure_ascii=False)

if __name__ == '__main__':
    app.run(debug=True)

1.我们先访问 http://127.0.0.1:5000/jsonify 地址查看jsonify返回的json内容如下

Flask中jsonify和json.dumps用法以及区别(简单案例)[通俗易懂]

检查页面属性看Response内容:

Flask中jsonify和json.dumps用法以及区别(简单案例)[通俗易懂]

 

2.再访问另一个地址 http://127.0.0.1:5000/jsondumps 查看返回的json内容如下

Flask中jsonify和json.dumps用法以及区别(简单案例)[通俗易懂]

检查页面属性看Response内容:

Flask中jsonify和json.dumps用法以及区别(简单案例)[通俗易懂]

 

使用jsonify时响应的Content-Type字段值为application/json,

而使用json.dumps时该字段值为text/html。

 

ps:

使用jsonify方法是需要添加一句 app.config[‘JSON_AS_ASCII’] = False

而json.dumps方法需要添加参数 ensure_ascii=False

这样做可以避免显示中文乱码。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142355.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • VS2019、VS2017、VS2013产品密钥

    VS2019、VS2017、VS2013产品密钥VisualStudio2013VisualStudioUltimate2013KEY:BWG7X-J98B3-W34RT-33B3R-JVYW9VisualStudioPremium2013KEY:FBJVC-3CMTX-D8DVP-RTQCT-92494VisualStudioProfessional2013KEY:XDM3T-W3T3V-MGJWK-8B…

    2022年5月19日
    51
  • android 浏览器控件[通俗易懂]

    android 浏览器控件[通俗易懂]在Android手机中内置了一款高性能webkit内核浏览器,在SDK中封装为一个叫做WebView组件。 什么是webkit WebKit是MacOSXv10.3及以上版本所包含的软件框架(对v10.2.7及以上版本也可通过软件更新获取)。同时,WebKit也是MacOSX的Safari网页浏览器的基础。WebKit是一个开源项目,主要由KDE的KHTML修改而来并且

    2022年5月15日
    40
  • idea最新激活码2022【2022最新】2022.02.07「建议收藏」

    (idea最新激活码2022)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html4KDDGND3CI-eyJsaWNlbnNlSW…

    2022年4月1日
    143
  • 华为光纤交换机zone配置

    华为光纤交换机zone配置需求:划分2个zone,接入两个不同业务群集。环境:华为光纤交换机SNS2124IOIO:串口,只用于串口登录admin/Hawei12#$有网络图标的口:管理口,管理地址10.77.77.77,http://10.77.77.77admin/Hawei12#$,连接网线可通过ssh登录。使用ipaddrset命令修改地址。注意:按照第一步至第六步即可完成配置,如修过别名或zone成…

    2022年5月11日
    299
  • Python_基础_(装饰器,*args,**kwargs,高阶函数,函数闭包,函数嵌套)

    Python_基础_(装饰器,*args,**kwargs,高阶函数,函数闭包,函数嵌套)

    2021年6月18日
    105
  • 在 ASP.NET MVC 中充分利用 WebGrid

    在 ASP.NET MVC 中充分利用 WebGridStuartLeeks下载代码示例今年早些时候,Microsoft发布了ASP.NETMVC版本3(asp.net/mvc)以及一款名为WebMatrix的新产品(asp.net/webmatrix)。 该WebMatrix版本中提供了几个工作效率帮助组件,可以简化诸如图表和表格数据呈现等任务。 其中一个帮助组件是WebGrid,

    2022年10月5日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号