如何覆盖 sailsjs 中的所有蓝图查找操​​作

How to override all blueprint find actions in sailsjs

无论模型如何,每当调用蓝图查找操​​作时,我都想要一些代码 运行。我可以想到三种方法,none 我可以弄清楚如何实施。

  1. 覆盖所有蓝图查找操​​作。理论上,在我的路线中我想要 get * overridingController.find 之类的东西。此函数中的 from 执行我的操作,然后调用蓝图查找挂钩。

  2. 使用中间件运行控制器的动作之后。我没有看到 sails 有可以在操作后 运行 修改响应的中间件。

  3. 在某个事件上触发函数 运行,例如blueprint.find 或 res.send。我没有看到这些活动。

对于谷歌员工,我通过政策解决了这个问题。我仍然想找到一种方法 运行 在 蓝图操作之后 做一些事情。

module.exports = async function (req, res, proceed) {
    if (req.options.model && /\/find$/.test(req.options.action)) {
        // do stuff 
        proceed(); // if you want to
    } else {
        proceed();
    }
};