TypeError: do_before() missing 1 required positional argument: 'resp'

TypeError: do_before() missing 1 required positional argument: 'resp'

我正在尝试将挂钩附加到路线。尽管我按照文档中的代码进行操作,但无论我在其中做什么,都会出现错误并挂钩 returns 错误。

components/counter.py:

def auth_request(req, resp, resource, params):
    pass


@falcon.before(auth_request)
class Counter(object):
    def on_get(self, req, resp):
        pass

app.py:

import falcon
from components import counter

api = application = falcon.API()

api.add_route('/counter', counter.Counter)

当我 运行 使用 gunicorn 并请求 localhost:8000/counter 时,它 returns:

TypeError: do_before() missing 1 required positional argument: 'resp'

正确的语法是

api.add_route('/counter', counter.Counter() )

您需要传递一个实例,而不是对对象的引用。