nodejs学习笔记(24)-express中的路由基本设置以及多级路由的嵌套
express
框架中路由的基本使用以及多重路由的嵌套
- 一般来讲,我们使用
node
写后端服务器的时候不可避免的需要写接口(get,post
),但是接口多的话写在一个app.js
中难免会使得代码非常的冗余,我们修改起来也非常的不方便,而且这也不符合模块化
规范,这时就可以使用我们express
中内置的路由器模块Router
- 我们可以使用它来集中的管理我们的
接口url
路径,也就是集中管理我们的路由,并且当我们的项目当中出现多级路由的使用,同样可以使用它来进行路由的分层
案例需求
- 实现网页对应的
url
跳转
/api/user ====> 用户页 (二级路由) |
1. 全部接口写在app.js
中(不推荐
)
app.js
(服务器实例)
// 1.引入express框架 |
- 这种方法将所有的接口都写在了
app.js
中,可行但是不推荐,因为接口一旦多起来的话,整个app.js
看起来就会非常的乱,很难接口复用并且一旦发生错误,排查起来也会非常的困难
2. 使用express
路由器来集中管理接口(二级路由)
- 这时我们在
app.js
外多建立一个router.js
用于二级路由的设置,在这个二级路由中我们就可以集中管理/api/
中的二级url
指向了,切记我们在router.js
和app.js
中做了路由分割,因此我们需要理清url
的拼接问题,也就是说,我们在app.js
中引入并挂载了/api/
对应的二级路由后,那么在router.js
中就不需要再设置接口的时候加上/api/
了! router.js
(二级路由实例)
/* ---------------- router.js(二级路由) ------------------ */ |
app.js
(服务器实例)
/* -------------------- app.js --------------------- */ |
- 这种方法适用于只有
两级路由
的接口设置,对于上述案例(多级路由
)来讲还不算是最好的解决方法。
3. 使用多级路由嵌套方法来解决
- 我们由案例的需求可以看出,
/user
路径哈有一个/user/info
的接口设置,这样我们完全可以再设置一个三级路由
来拼接user/
路径,因此我们在设置一个userRouter.js
来设置/user
的三级路由 userRouter.js
(user路由中的三级路由实例)
/* ------------------ userRouter.js(三级路由) ------------------- */ |
router.js
(二级路由实例)
/* ------------------- router.js(二级路由) ---------------------- */ |
app.js
(服务器实例)
/* ------------------------------ app.js(服务器实例) ----------------------------- */ |
结果展示:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0许可协议。转载请注明来自 肥林の仓库