如何将值传递给此装饰器的函数上下文?让我们说authStr
为例。
# decorator for endpoints that need auth token
def requires_auth(f):
@wraps(f)
def decorated(*args, **kwargs):
authStr = request.headers.get('Authorization') # 'Bearer thisisatokenstrhere'
check_auth(authStr) # check if expired
if not check_auth(authStr):
return abort(401)
return f(*args, **kwargs)
return decorated
答案 0 :(得分:1)
你有kwargs dict,你可以简单地在那里添加:
kwargs['authStr'] = authStr
return f(*args, **kwargs)
虽然我不知道它会有多大用处,除非装饰的功能已经预料到了那个kwarg。