Sails.js:如何使用通配符自动路由到独立操作?

时间:2018-08-02 08:20:51

标签: sails.js

假设我的Sails.js应用程序(v1.0.2)中有一些独立的路由:
'用户/登录/',
'用户/注销',
'用户/重置密码'
...
现在,我当前的路线如下所示:

'GET /api/user/login': {
    action: 'user/login',
},

'GET /api/user/logout': {
    action: 'user/logout',
},

'GET /api/user/reset-password': {
    action: 'user/reset-password',
},

有没有办法用更少的代码获得相同的结果?

'GET /api/user/*': {
    action: 'user/*',
},

或:

'GET /api/user/:actionName': {
    action: 'user/:actionName',
},

2 个答案:

答案 0 :(得分:0)

当使用带有通配符的路由(例如“ / *”)时,请注意,这还将使请求与静态资产(即/js/dependencies/sails.io.js)匹配并覆盖它们。

https://sailsjs.com/documentation/concepts/routes/custom-routes#?wildcards-and-dynamic-parameters

或者您可以尝试使用模式变量以减少代码量。

答案 1 :(得分:0)

也许您可以激活

  

为应用程序中的每个操作自动公开隐式路由?

位于config / blueprints.js文件中。

像这样,您的所有路线都会被公开,您无需指定每个路线和操作。

但是出于安全原因,这不是一个好的解决方案。