如何跳过 httpauth

2015-08-18 08:37:50 +08:00
 lbfeng

调用 restful api 需要通过 httpauth ,而站点使用 flask-login 管理用户登录。如何让已经登录的用户跳过 httpauth 呢? current_user.is_authenticated ()能实现吗?

@api.before_request
@auth.login_required
def before_request ():
if not g.current_user.is_anonymous and \
not g.current_user.confirmed:
return forbidden ('Unconfirmed account')

2942 次点击
所在节点    Flask
1 条回复
jakes
2015-08-18 13:04:11 +08:00
我的做法是在 flask-login 登录成功后产生一个用于 httpauth 授权的 token ,保存在 cookie 中。当请求是 RESTful API 时附带上 token 做验证,退出登录时删除该 token 。
目前没想到什么好方法完美解决,期待楼下提供更为恰当的方法。也许需要写一个包含了 httpauth 授权和 flask-login 功能的 flask 插件吧?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/213928

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX