调用 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')
补全代码
@auth.verify_password
def verify_password(email_or_token, password):
if email_or_token == '':
g.current_user = AnonymousUser()
return True
if password == '':
g.current_user = User.verify_auth_token(email_or_token)
g.token_used = True
return g.current_user is not None
user = User.query.filter_by(email=email_or_token).first()
if not user:
return False
g.current_user = user
g.token_used = False
return user.verify_password(password)