Flask,如何仅在 return 到浏览器时才进行 jsonify
Flask, how to jsonify ONLY when return to browser
我尝试用 Flask 构建一个 RESTful
api 服务器,并创建一些可以 return JSON
格式化数据到浏览器的函数。
现在希望能把代码复用性更强,例如:
@simple_page.route('/raw_data')
def raw_data():
# to json
pass
@simple_page.route('/score')
def score():
data = raw_data()
# some calculation & return the score (to json)
pass
如果 Flask 中有什么方法可以将函数 raw_data()
returns json 格式化结果 if and only if
结果发送回浏览器? (类似于 @cherrypy.tools.json_out()
在 cherrypy 中的作用)
提前致谢。
将 raw_data()
分解为一个 单独的 函数,由两条路径重用:
def _produce_raw_data():
return raw_data
@simple_page.route('/raw_data')
def raw_data():
return jsonify(_produce_raw_data())
@simple_page.route('/score')
def score():
data = _produce_raw_data()
# some calculation & return the score (to json)
return jsonify(calculation_results)
我尝试用 Flask 构建一个 RESTful
api 服务器,并创建一些可以 return JSON
格式化数据到浏览器的函数。
现在希望能把代码复用性更强,例如:
@simple_page.route('/raw_data')
def raw_data():
# to json
pass
@simple_page.route('/score')
def score():
data = raw_data()
# some calculation & return the score (to json)
pass
如果 Flask 中有什么方法可以将函数 raw_data()
returns json 格式化结果 if and only if
结果发送回浏览器? (类似于 @cherrypy.tools.json_out()
在 cherrypy 中的作用)
提前致谢。
将 raw_data()
分解为一个 单独的 函数,由两条路径重用:
def _produce_raw_data():
return raw_data
@simple_page.route('/raw_data')
def raw_data():
return jsonify(_produce_raw_data())
@simple_page.route('/score')
def score():
data = _produce_raw_data()
# some calculation & return the score (to json)
return jsonify(calculation_results)