如何从此装饰器将值传递到函数的上下文中?让我们以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

最佳答案

您拥有kwargs字典,只需在此处添加即可:

kwargs['authStr'] = authStr
return f(*args, **kwargs)


尽管我不知道这将有多大用处,除非装饰的功能已经在期待那个kwarg。

关于python - PyMongo装饰变量到函数上下文,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29277088/

10-09 08:52