我在一个蓝图模块中有一个JSON API,在另一个蓝图模块中有一个Web前端。
我希望通过在发送到客户端之前嵌入一些它在前端视图模板中需要的JSON来完成客户端JS代码必须做的一些AJAX请求,{{3} }。
如何从另一个Flask视图调用一个Flask视图?
我可以直接调用view函数,但是request
会对应于“外部”请求,这会混淆调用的API函数。我已经尝试了like in this gist I found,它几乎可以正常运行,但我无法弄清楚如何保持身份验证(我使用Flask-Login)。
答案 0 :(得分:20)
您可以使用Flask test client:
client = app.test_client()
response = client.get('/your/url', headers=list(request.headers))
要使用Flask-Login保持身份验证,您需要传递请求的标题。