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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 主题:Windows系统服务器磁盘挂载

    主题:Windows系统服务器磁盘挂载

    2021年9月22日
    158
  • navicat激活码无法生成【2021免费激活】[通俗易懂]

    (navicat激活码无法生成)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~1…

    2022年3月27日
    125
  • SQL文件导入Oracle数据库

    SQL文件导入Oracle数据库直接复制SQL文件至pl/sql中执行,若sql文件过大会直接导致数据库卡死,未避免数据库卡死,可直接使用pl/sql工具提供的导入表功能将sql文件直接导入数据库表中1.如下图所示:链接数据库,选择工具–》导入表2.如下图示:选择SQL导入—使用命令窗口–》选择要导入的sql文件–》点击导入按钮3.如下图所示:若提示Done,则表示导入成功,导入成功后需要点击com…

    2022年10月2日
    0
  • Spring Cloud的架构[通俗易懂]

    Spring Cloud的架构[通俗易懂]SpringCloud架构图Eureka用于服务注册和发现,利用了客户端的服务发现,所以它内部需要Ribbon作为客户端负载均衡。Hystrix,客户端容错保护,服务熔断、请求缓存、请求合并、依赖隔离。Feign,声明式服务调用。Bus,消息总线,配合Config仓库修改的一种Stream实现,Dashboard,Hystrix仪表盘,监控集群模式和单点模式,其中集群模式…

    2022年5月13日
    34
  • 为UWP应用开启回环访问权限「建议收藏」

    为UWP应用开启回环访问权限

    2022年3月13日
    180
  • BigDecimal保留两位小数及格式化成百分比[通俗易懂]

    BigDecimal保留两位小数及格式化成百分比[通俗易懂]BigDecimal保留两位小数及格式化成百分比在项目中经常会用到小数的一些计算,而float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合。但是,商业计算往往要求结果精确。所以有时候必须要采用BigDecimal。publicc…

    2022年9月23日
    0

发表回复

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

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