据我了解,中间件处理程序不适用于此,因为它们在处理请求之前工作。我目前的解决方案是:
router.get("/items/:id", middleware! { |request, mut response|
// ...
let data = json::encode(&data).unwrap();
response.set(ContentLength(data.len() as u64));
data
});
我不喜欢这个,因为我有很多路由,我必须在每个路由中插入此代码。我想要一个在处理我的路由后调用的中间件。还有另一种方式吗?