我想在Cyclone请求处理程序中用一个像这样的简单装饰器来装饰post / get / ...方法:
def json_errors(fun):
def x(self, *args, **kwargs):
try:
rv = fun(self, *args, **kwargs)
return rv
except cyclone.web.HTTPError, e:
self.set_status(e.status_code)
self.set_header('Content-Type', 'application/json')
self.write(e.log_message)
self.finish()
return x
但是,因为我的post / get / ...方法已经使用defer.inlineCallbacks进行了修饰,所以我得到了各种与延迟相关的错误,无论我在@defer.inlineCallbacks之前还是之后放置我的装饰器
如何添加装饰器?