我正在尝试创建一个传递request.headers的自定义JWT_required装饰器。到目前为止,我所尝试的一切都给了我以下错误:
RuntimeError:在请求上下文之外工作。
这通常意味着您尝试使用该功能 需要一个活动的HTTP请求。请参阅测试文档 有关如何避免此问题的信息。
这是我的装饰者:
def jwt_required(headers):
def jwt_req(func):
@functools.wraps(func)
def function_that_runs_func(*args, **kwargs):
print(headers)
func(*args, **kwargs)
return function_that_runs_func
return jwt_req
以下是我试图利用装饰器的方法:
class Cert(Resource):
@jwt_required(request.headers)
def get(self):
我明白错误在说什么;但是,我不确定如何绕过它。我希望将一个复制的字典传递给jwt装饰器,但这不起作用。
感谢您的帮助。
答案 0 :(得分:0)
这是通过添加@jwt_required(请求)然后通过request.headers在装饰器中找到标题来解决的。