路由的概念
express中的路由
在express中,路由指的是客户端的请求与服务器处理函数之间的映射关系。
Express中的路由分3部分组成,分别是请求的类型、请求的URL地址、处理函数,
** 路由的匹配过程**
每当一个请求到达服务器之后,需要先经过路由的匹配,只有匹配成功,才会调用对应的处理函数。
在匹配时,会按照路由的顺序进行匹配,如果请求类型和请求的URL同时匹配成功,则express会将这次请求,转交给对应的function函数进行处理。
路由匹配注意定:
1.按照定义的先后顺序进行匹配
2.请求类型和请求URL同时匹配成功,才会调用对应的处理函数。
** 路由的使用**
在express中使用路由最简单的方式,就是把路由挂载到app上,express不建议将路由直接挂载到app上,而是推荐将路由抽离为单独的模块。
将路由抽离为单独模块的步骤如下:
- 创建路由模块对应的js文件
- 调用express.Router()函数创建路由对象
- 向路由对象上挂载具体的路由
- 使用module.exports向外共享路由对象
- 使用app.use()函数注册路由模块
router.js
//导入express
const express = require('express')
//创建路由对象
const router = express.Router()
//挂载具体的路由
router.get('/user/list',(req,res)=>{
res.send('get user list ')
})
router.post('/user/add',(req,res)=>{
res.send('add user list ')
})
//向外导出路由对象
module.exports=router
//引用方法
const router = require('./router')
//app.use()是用来注册全局中间键的
app.use(router)
//也可以为路由增加前缀,这样,如果需要访问当前组件中的请求就需要在前面增加前缀才可以访问了。
//appo.use('/api',router)