我不知道如何application/json在Flask中为视图强制使用MIME类型。这是我出于演示目的汇总的一个简单视图:
application/json
@app.route("/") def testView(): ret = '{"data": "JSON string example"}' return ret
JSON字符串(保存在variable中ret)是从其他地方收集的(使用来自使用另一个程序的stdout subprocess),所以我不能使用jsonifyFlask提供的JSON字符串。
ret
subprocess
jsonify
我看过“ Returning Json”文档和这个 Stackoverflow问题,但到目前为止我还没有碰到任何运气。我已经寻找了一段时间,并且会继续搜索,但是我想在这里问一下,以防万一有人遇到这个问题。
谢谢。
见下面的答案
解决方案:
@app.route("/") def testView(): ret = '{"data": "JSON string example"}' resp = Response(response=ret, status=200, mimetype="application/json") return resp
我发现此网站很有用:使用Python和Flask实现RESTful Web API
就像soulseekah注意到的那样,在这种情况下,make_response可能是一个更好的选择。然后设置mimetype属性。
r = make_response( data ) r.mimetype = 'application/json' return r