Node | Express路由简单使用

1,982 阅读1分钟

一、什么是路由?

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

二、Express中路由的组成

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

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

三、路由的模块化

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

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

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

    image-20220128223950999

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

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

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

    // 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()函数注册路由模块。

    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');
    })
    

四、为路由添加访问前缀

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

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');
})