Python Flask中的jsonify

Python Flask中的jsonify#-*-coding:utf-8-*-#@Time:2022/4/1311:46下午#@Author:renwoxing#@File:flask_restful_demo.py#@Software:PyCharmfromflaskimportFlask,jsonify,abort,requestapp=Flask(__name__)books=[{‘id’:1,’name’.

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

# -*- coding: utf-8 -*-
# @Time    : 2022/4/13 11:46 下午
# @Author  : renwoxing
# @File    : flask_restful_demo.py
# @Software: PyCharm

from flask import Flask, jsonify, abort, request

app = Flask(__name__)
books = [
    {
        'id': 1,
        'name': u'大学',
        'author': '张三',
        'price': 98
    },
    {
        'id': 2,
        'name': u'骆驼祥子',
        'author': '老舍',
        'price': 98
    }
]

@app.route("/bookstore/api/v1/books", methods=['GET'])
def get_books():
    return jsonify({'books': books})

if __name__ == '__main__':
    app.run(host="0.0.0.0", port="8000", debug=True)
  1. 根据函数说明:该函数在dumps函数上做了封装,变得更易用;
  2. 实际调用过程:
    jsonify调用下面的函数:
current_app.response_class(
        dumps(data, indent=indent, separators=separators) + "\n",
        mimetype=current_app.config["JSONIFY_MIMETYPE"],
    )

上面的dumps实际上是调用了itsdangerous 库json.dumps函数而已:

from itsdangerous import json as _json

    _dump_arg_defaults(kwargs, app=app)
    encoding = kwargs.pop("encoding", None)
    rv = _json.dumps(obj, **kwargs)
    if encoding is not None and isinstance(rv, text_type):
        rv = rv.encode(encoding)
    return rv

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

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

(0)
上一篇 2022年5月23日 下午1:00
下一篇 2022年5月23日 下午1:00


相关推荐

  • python爬虫入门教程:爬取网页图片

    python爬虫入门教程:爬取网页图片在现在这个信息爆炸的时代 要想高效的获取数据 爬虫是非常好用的 而用 python 做爬虫也十分简单方便 下面通过一个简单的小爬虫程序来看一看写爬虫的基本过程 准备工作语言 pythonIDE pycharm 首先是要用到的库 因为是刚入门最简单的程序 我们主要就用到下面这两 importreques 用于请求网页 importre 正则表达式 用于解析筛选网页中的信息其中 re 是 python 自带的 requests 库需要我们自己安装 在命令行中输入 pipinstall

    2026年3月19日
    2
  • jle汇编,关于AT& T语法汇编中的cmp / jg,jle等

    jle汇编,关于AT& T语法汇编中的cmp / jg,jle等Soeverysingl cmp eax ebxjg something wouldjumpto something ifeaxwasgrea ButIhaveanot something something

    2026年3月20日
    2
  • 工商银行近20年实时大数据平台建设历程「建议收藏」

    工商银行近20年实时大数据平台建设历程「建议收藏」全文共4000个字,建议阅读10分钟一、工行实时大数据平台建设历程工商银行从2002年开始建设数据集市,当时主要使用Oracle类单机版的关系型数据库。随着数据量不断增加,开始引入TD、ED等国外高端一体机。2014年工行正式基于Hadoop技术建设了大数据平台,在其之上构建了企业级数据湖及数据仓库。2017年,随着AI技术的兴起,又开始建设机器学…

    2022年6月7日
    45
  • 腾讯HY-MT1.5翻译大模型部署教程:零基础快速上手

    腾讯HY-MT1.5翻译大模型部署教程:零基础快速上手

    2026年3月13日
    2
  • 直流无刷电机控制器(换电机霍尔收费多少)

    上封帖子介绍了51单片机,JMT18F003PLUS,提供了芯片例程和资料,链接如下:JMT18F003PLUS单片机芯片手册,例程等资料下载http://www.51hei.com/bbs/dpj-148985-1.html(出处:51hei)这里把这款芯片用于直流无刷电机控制的demo程序,有感和无感源代码,一并开源,希望对学习者有帮助。BLDCdemo板是这样的:芯片资料,bldc控制板…

    2022年4月13日
    51
  • Oracle INSERT 语句

    Oracle INSERT 语句–Start–更多参见:OracleSQL精萃– 声明:转载请注明出处–Lasteditedon2015-06-17–Createdby ShangBoon 2015-06-17–End

    2022年7月25日
    18

发表回复

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

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