python – 仅限于在Flask中登录用户的ajax调用
作者:互联网
我试图将ajax呼叫限制为仅登录用户.典型用例是发布博客,只有登录用户才能提交帖子,否则用户应该被重定向到/ login端点.我正在使用烧瓶安全性.我可以通过不使用ajax来做同样的事情.
任何人都可以建议我如何实现这样的功能.
解决方法:
假设您尝试从/ ajax获取数据,如下所示:
$.getJSON("/ajax", function(data){
...
});
只需使用login_required装饰器保护init.py中的路由:
from flask.ext.security import login_required
@app.route('/ajax')
@login_required
def ajax():
data = get_data() # Get your data
return json.dumps(data)
或者您也可以这样做:
from flask.ext.security import current_user
@app.route('/ajax')
def ajax():
if current_user.is_authenticated:
data = get_data() # Get your data
return json.dumps(data)
else:
return 'Not allowed'
标签:python,flask,flask-security,flask-login 来源: https://codeday.me/bug/20190702/1355952.html