我的路线如下:
app.add_route('/v1/my_route', MyResource())
app.add_route('/v1/my_route/{app_id}', MyResource())
app.add_route('/v1/my_route2/any_route', AnyRouteResource())
app.add_route('/v1/my_route2/any_route/{app_id}', AnyRouteResource())
和中间件类似于
class MyMiddleware(object):
def process_request(self, req, resp):
/** Here i want to get <app_id> value if it is passed **/
答案 0 :(得分:2)
您可以从req
获取请求对象的每个属性。例如,要获取资源的路径:
class MyMiddleware(object):
def process_request(self, req, resp):
path = req.path
# process your path here
检查docummentation以获得有关请求的更多信息。
如果您想直接获取app_id,只需extend带有params的方法,猎鹰就可以完成。
class MyMiddleware(object):
def process_request(self, req, resp, params):
app_id = params["app_id"]
答案 1 :(得分:2)
基本中间件中有process_resource(self,req,resp,resource,params)方法。您可以覆盖它。参数是一个类似dict的对象,具有从uri模板字段中提取的参数。