Node | Express路由简单使用

Node | Express路由简单使用

一月 28, 2022
该文章更新于 2022.01.28

一、什么是路由?

在Express 中,路由指的是客户端的请求与服务器处理函数之间的映射关系。

二、Express中路由的组成

在Express中,路由分3部分组成:请求的类型请求的URL地址处理函数,格式如下:

1
2
/*server是使用express创建的服务实例*/
server.METHOD(PATH,HANDLER)

三、路由的模块化

为了方便对路由进行模块化的管理,Express 不建议将路由直接挂载到app上,而是推荐将路由抽离为单独的模块

将路由抽离成单独的模块的步骤如下:

  1. 创建路由模块对应的js文件。

    image-20220128223950999

  2. 调用express.Router()函数创建路由对象。

  3. 向路由对象挂载具体的路由。

  4. 使用modules.exports向外共享路由对象。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    // 1、导入express模块
    const express = require('express')
    // 2、创建路由对象
    const router = express.Router()
    // 3、挂载具体的路由
    router.get('/user/list', (req, res) => {
    res.send('Get User List')
    })
    router.post('/user/add', (req, res) => {
    res.send('Add new user')
    })

    // 4、向外导出路由
    module.exports = router
  5. 使用server.use()函数注册路由模块。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    const express = require('express')
    const server = express()

    // 1、导入路由模块
    const router = require('./router/router')
    // 2、注册路由模块
    server.use(router)

    server.listen(80, () => {
    console.log('server running at http://127.0.0.1');
    })

四、为路由添加访问前缀

类似于托管静态资源时,为静态资源统一挂载访问前缀一样,路由模块添加前缀的方式也非常简单。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const express = require('express')
const server = express()

// 1、导入路由模块
const router = require('./router/router')
// 2、注册路由模块
// server.use(router)


// 3、给路由模块添加访问前缀
server.use('/api',router)

server.listen(80, () => {
console.log('server running at http://127.0.0.1');
})