当前flask-login版本中无reload_user函数,是怎么实现验证用户信息的?
我在学习flask的时候接触到了flask-login这个扩展,对于user_loader这个装饰器很不理解
查询了很多文章/问答都提到user_loader这个装饰器将装饰的函数赋给了self.user_callback,
而reloader_user也是调用的方法,但我在github查询flask-login并没有找到reloader_user这个
函数,所问现在是什么替代了之前的reloader_user的实现?当用户非第一次登录,在已经登记的情况下
如何获取用户的登录信息的?谢谢!
flask-login的github:https://github.com/maxcountry...
我查到的相关文章:http://www.voidcn.com/article...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我之前也纠结过这个问题,这个文章会让你很明白:https://segmentfault.com/q/10...
加
user_loader
就是告诉 flask-login 你的登录用户将从load_user()
函数中取得.我们分别以未登录和已登录两种情况来分析.
首先你要提供一个
User
接口, 像这样的假设当前用户命名为
currUser
.未登录
这时候
currUser.is_anonymous
为True
, 表示匿名用户.当用户提交帐号密码进行登录时, 你得从数据库中验证它, 通过后
currUser.is_authenticated
变成True
currUser.is_anonymous
变成False
currUser.get_id()
返回该用户的 登录帐号然后调用
flask_login.login_user(currUser)
告诉 flask-login 该用户已经登录成功.已登录
用
flask_login.current_user
变量引用当前用户, 退出登录时调用flask_login.logout_user()