Flask,返回浏览器时如何jsonify

时间:2015-10-29 08:37:23

标签: python json flask cherrypy

我尝试使用Flask构建一个RESTful api服务器,并创建一些可以将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()返回json格式结果if and only if,结果将被发送回浏览器? (像@cherrypy.tools.json_out()这样的东西在cherrypy中)

提前致谢。

1 个答案:

答案 0 :(得分:2)

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)