小编loo*_*ild的帖子

根据Flask中的Accept报头路由请求

我想基于Accept HTTP标头路由到其他Flask视图,例如:

@api.route('/test', accept='text/html')
def test_html():
    return "<html><body>Test</body></html>"

@api.route('/test', accept='text/json')
def test_json():
    return jsonify(test="Test")
Run Code Online (Sandbox Code Playgroud)

我没有在Flask使用的Werkzeug Rule构造函数中找到相关选项。它是缺少的功能还是有可能以不同的方式实现相同的效果,例如通过在路由之前拦截和修改URL路径?

我不想将视图合并为一个视图,因为这将使代码显着复杂化,其中有许多视图位于不同的蓝图中。

我知道有人问过类似的问题,但没人用Flask回答。可以在不同的Web框架中执行此操作,例如在Pyramid中使用谓词 -可以在此答案中找到示例代码。

python werkzeug http-headers flask

3
推荐指数
3
解决办法
3393
查看次数

标签 统计

flask ×1

http-headers ×1

python ×1

werkzeug ×1