2024-09-29 20:27:46 发布
网友
我想在调用@jwt_required时向令牌添加额外的验证。我想核实其中一个说法。我能和JWTManager一起做吗?在
目前我的代码只是调用:
jwt = JWTManager(app)
我用:@jwt_required修饰函数
@jwt_required
贴在你的另一个问题上,但我也会贴在这里,以防别人无意中发现。在
作者在这里。就其价值而言,flask jwt也不支持要求索赔(尽管它说有)。https://github.com/mattupstate/flask-jwt/issues/98
编辑:这是现在在烧瓶jwt扩展。https://github.com/vimalloc/flask-jwt-extended/issues/64#issuecomment-318800617
干杯
首先,我倾向于创建一个包装jwt_required的定制装饰器。在
jwt_required
通过the functools.wraps documentation可以大致了解一下它的外观:
from functools import wraps from flask_jwt_extended import jwt_required from flask_jwt_extended.view_decorators import _decode_jwt_from_request from flask_jwt_extended.exceptions import NoAuthorizationError def custom_validator(view_function): @wraps(view_function) def wrapper(*args, **kwargs): jwt_data = _decode_jwt_from_request(request_type='access') # Do your custom validation here. if (...): authorized = True else: authorized = False if not authorized: raise NoAuthorizationError("Explanation goes here") return view_function(*args, **kwargs) return jwt_required(wrapper) @app.route('/') @custom_validator def index(): return render_template('index.html')
Here是您可以找到jwt\u所需的源代码的地方。在
贴在你的另一个问题上,但我也会贴在这里,以防别人无意中发现。在
作者在这里。就其价值而言,flask jwt也不支持要求索赔(尽管它说有)。https://github.com/mattupstate/flask-jwt/issues/98
编辑:这是现在在烧瓶jwt扩展。https://github.com/vimalloc/flask-jwt-extended/issues/64#issuecomment-318800617
干杯
首先,我倾向于创建一个包装
jwt_required
的定制装饰器。在通过the functools.wraps documentation可以大致了解一下它的外观:
Here是您可以找到jwt\u所需的源代码的地方。在
相关问题 更多 >
编程相关推荐