我正在使用Authlib 0.7版。我试图让客户端访问多个范围,我这样做的方式是在创建客户端时,将以空格分隔的字符串作为范围(例如“ A B”)。当我为此客户端生成访问令牌时,其作用域设置为“ A B”。但是,当我尝试访问受范围“ A”保护的资源时(为了保护资源,我添加了@require_oauth('A')),我被拒绝访问并出现http 403错误。希望能帮助我解决此问题的任何建议。 谢谢
答案 0 :(得分:0)
在多个范围内查看文档:
https://docs.authlib.org/en/latest/flask/2/resource-server.html#multiple-scopes
您可以在AND和OR模式下将多个作用域应用于一个端点。默认为AND模式。
@app.route('/profile')
@require_oauth('profile email', 'AND')
def user_profile():
user = current_token.user
return jsonify(user)