如何在Flask中返回单行无缩进的JSON响应
Flask返回单行压缩JSON的实现方法
方法1:全局配置(所有接口生效)
Flask内置了JSON输出格式化的配置项,修改配置后全局所有jsonify返回的接口都会自动使用压缩格式:
# 初始化Flask应用后添加这行配置 app.config['JSONIFY_PRETTYPRINT_REGULAR'] = False
注意:Flask生产环境(DEBUG=False)下该配置默认就是False,默认返回压缩格式;仅调试模式默认开启美化缩进
方法2:单个接口单独配置(不影响其他接口)
如果不需要全局修改,单个接口可以直接用json模块手动构造响应,跳过jsonify的自动美化逻辑:
import json from flask import Response @app.route("/dashboard", methods= ['GET','POST']) def index(): # 此处省略业务逻辑 response = {"iDisplayStart":1,"iDisplayLength":10, "iTotalRecords":2,"iTotalDisplayRecords":2,"data":data_ne} # separators参数用来移除逗号、冒号后的多余空格,实现极致压缩 json_str = json.dumps(response, separators=(',', ':')) return Response(json_str, mimetype='application/json')
注:你的示例代码存在小笔误,定义的响应字典变量名为
response,返回时写的是jsonify(results),注意统一变量名避免报错。
内容的提问来源于stack exchange,提问作者MADPED
相关产品推荐
相关产品推荐

