基于Sailsjs documentation,可以在路由文件中添加一个语法如下的响应:
module.exports.routes = {
'/foo': {response: 'notFound'}
};
这将搜索我notFound.js
目录中的/response
文件。
因此,在我的routes.js
文件中,我将其添加为其他路由的末尾以便捕获未找到的路由,它是这样的:
module.exports.routes = {
'get /myroute/:myPara/': 'MyController.getAll',
'get /myroute/:myPara/': 'MyController.getOne',
'post /myroute/:myPara/': 'MyController.create',
'/*' : {response: 'notFound'}
};
我意识到从来没有找到最后一条路线,我也尝试删除斜线(做'*'
),但没有任何作用。
我错过了什么吗?谢谢!
答案 0 :(得分:1)
Sails已经处理了404 notFound:here
Sails调用res.notFound(),你可以覆盖默认的notFound():
res.notFound()
(与其他用户态响应方法一样)可以被覆盖或修改。它运行/responses/notFound.js中定义的响应方法,该方法在新生成的Sails应用程序中自动捆绑。如果您的应用中不存在notFound.js响应方法,Sails将隐式使用默认行为。