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