仅限于在Flask中登录用户的ajax调用

时间:2016-01-26 19:08:12

标签: python flask flask-login flask-security

我正在尝试将ajax调用限制为仅登录用户。典型用例是发布博客,只有登录用户才能提交帖子,否则用户应该被重定向到/ login端点。我正在使用烧瓶安全性。我可以通过不使用ajax来做同样的事情。 任何人都可以建议我如何实现这样的功能。

1 个答案:

答案 0 :(得分:2)

假设您尝试从/ ajax获取数据:

exit()

使用login_required装饰器在 init .py中保护该路线:

$.getJSON("/ajax", function(data){
    ...
});

或者您也可以这样做:

from flask.ext.security import login_required     

@app.route('/ajax')
@login_required
def ajax():
    data = get_data()  # Get your data
    return json.dumps(data)