node使用express中对于不存在路径如何处理(404页面处理)

最近做项目,发现express中router,对于不存在的路径如何处理直接看代码

引入router模块


路由页面


问题来了,对于用户输入不存在的路径改如何处理

比如127.0.0.1/2


但是不存在的路径,服务端如何给一个不存在的路径呢

比如127.0.0.1/ddgd


首先我们匹配一下,发现会匹配到/:id可以再这个函数里有一个next


我这边路径都是127.0.0.1/数字如果不是了,或则一个不存在的路径
只需要在路由最后加一个统一处理中间件:

// 挂载路由,代码略...

app.use((req, res, next) => {
  res.render('404.html')
})

// 其它代码...
注意:上面代码一定要放在所有路由中间件之后,原理就是当前面没有任何一个路由可以处理的时候,程序就会走到最后这个中间件,然后就可以当作 404 来处理了。                                                                                                                                                  
或则加一个通配符操作
router.get('*', function(req, res){
  res.sendfile('./public/404.html');
});
可以参考地址https://expressjs.com/en/guide/routing.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值