Sails.js 单页应用程序 (SPA) — 将所有 missing/unused 路由重定向到单个控制器操作

Sails.js Single Page Application (SPA) — redirect all missing/unused routes to a single controller action

我正在使用 Sails.js 作为后端开发单页应用程序 (SPA)。我只想将所有路由重定向到单个控制器操作。

但是,当我执行以下操作时:

// config/routes.js
module.exports.routes = {
  'GET *': 'MainController.application'
};

所有请求都被重定向到我的应用程序路由,即使是 CSS/JavaScript 等静态文件也是如此。当没有其他方法可以处理它时,是否有一种简单的方法可以回退到我的应用程序路由?

我要:

  1. 直接提供的所有静态文件(JS,CSS,HTML partials)
  2. 所有特定路线按原样处理
  3. 在其他情况下重定向到单个入口点控制器

在彻底重新阅读文档后,我发现了一个 skipAssets 路由参数。

这是我的新配置:

// config/routes.js
module.exports.routes = {
  'GET *': {
    controller: 'MainController',
    action: 'application',
    skipAssets: true
  }
};

看起来它正在按要求工作。