我用的router,但是不知道不存在的router请求如何处理,例如
可以有内容,但是我的路径后边随便加一个不存在路径参数如何给一个404页面
是通过路由控制吗?
回复 (5)
L
express文档中有提供错误处理的操作,希望对你有帮助 http://www.expressjs.com.cn/guide/error-handling.html
D
F
应该是类似这样的:
router.get('*', function(req, res){
res.sendfile('./public/404.html');
});
L
在路由最后加一个统一处理中间件:
// 挂载路由,代码略...
app.use((req, res, next) => {
res.render('404.html')
})
// 其它代码...
上面代码一定要放在所有路由中间件之后,原理就是当前面没有任何一个路由可以处理的时候,程序就会走到最后这个中间件,然后就可以当作 404 来处理了。
参与回复
登录后即可参与回复。登录