Sails.js 如何显示维护页面?

Sails.js 如何显示维护页面?,sails.js,Sails.js,我想在我的网站上显示一个维护页面。我计划将一个布尔值保存到数据库中,以便控制何时显示页面。如何仅显示控制器路由的维护页面?我希望继续让sails正常地提供脚本、样式表和图像 您可以使用策略来实现这一点 // api/policies/inMaintenance.js module.exports = function(req, res, next) { var maintenanceMode = ... // get the value if (maintenanceMode)

我想在我的网站上显示一个维护页面。我计划将一个布尔值保存到数据库中,以便控制何时显示页面。如何仅显示控制器路由的维护页面?我希望继续让sails正常地提供脚本、样式表和图像

您可以使用策略来实现这一点

// api/policies/inMaintenance.js

module.exports = function(req, res, next) {
    var maintenanceMode = ... // get the value
    if (maintenanceMode) return res.view('maintenance');
    next();
}


// config/policies.js

module.exports.policies = {
    '*': 'inMaintenance',
    ...
}
在您的
视图
文件夹中添加
维护.ejs

所有资产仍将可用

但是,这种方法有一个缺点,如果在
config/routes.js
中有一个直接指向视图的路由,它将不会通过策略。因此,您需要由控制器处理所有路由

您可以查看以更好地了解它们的工作原理