Node-Express路由使用

前言


🫥大家好我是一溪风月程序员界的搬砖工,前面的讲解了Express框架的基本使用,那么今天我们就来学习一下路由相关的内容,在实际开发中我们一般都会和路由结合起来,而不会直接使用app的那种方式。

一.为什么要使用路由


🤡试想一下如果我们把全部的内容都存放在App中,那么App会变得非常的复杂,没有对用的层次和架构导致我们开发的东西难以维护,一方面完整的Web服务器包含非常多的处理逻辑,另一方面有些处理逻辑其实是一个整体,我们应该把他们放在一起,比如对user相关的处理。

  1. 获取用户列表
  2. 获取某一个用户的信息
  3. 创建一个新的用户
  4. 删除一个用户
  5. 更新一个用户

二.路由的相关使用


🦝我们知道在之前我们写相关代码都是基于app这个内容的,我们的代码难以组织,app会越来越繁重,不利于我们对整个项目进行管理,所以为了解决这个问题我们引入了后端路由的概念,我们可以使用express.Router来创建一个路由处理程序。

  1. 一个Router实例拥有完整的中间件和路由系统。
  2. 因此,也被称为迷你应用程序(mini-app)
js 复制代码
const express = require('express')


const userRouter = express.Router()

userRouter.get('/', (req, res, next) => {
  res.json('用户列表数据')
})


userRouter.get('/:id', (req, res, next) => {
  const id = req.params.id
  res.json('某个用户的数据id' + id)
})


userRouter.post('/', (req, res, next) => {
  res.json("创建用户成功")
})


userRouter.delete('/:id', (req, res, next) => {
  const id = req.params.id
  res.json("删除某一个用户的id" + id)
})


userRouter.patch('/:id', (req, res, next) => {
  const id = req.params.id
  res.json("修改某一个用户的数据" + id)
})

module.exports = userRouter
js 复制代码
const express = require('express')
const userRouter = require('./router/userRouter.js')
const app = express()

// 使用路由
app.use('/users', userRouter)

app.listen(9000, () => {
  console.log("服务启动成功")
})

三.总结


😎在Express中我们之前使用的都是直接基于app进行的操作的,但是这么做的缺点有很多,当我们项目复杂的话我们没有办法维护,为了解决这个问题Express就提供了路由(mini-app)我们可以直接使用express.Router()来创建,然后使用即可。

相关推荐
不再幻想,脚踏实地20 分钟前
Spring AOP从0到1
java·后端·spring
编程乐学(Arfan开发工程师)22 分钟前
07、基础入门-SpringBoot-自动配置特性
java·spring boot·后端
会敲键盘的猕猴桃很大胆37 分钟前
Day11-苍穹外卖(数据统计篇)
java·spring boot·后端·spring·信息可视化
极客智谷39 分钟前
Spring Cloud动态配置刷新:@RefreshScope与@Component的协同机制解析
后端·spring·spring cloud
Lizhihao_1 小时前
Spring MVC 接口的访问方法如何设置
java·后端·spring·mvc
Code哈哈笑5 小时前
【图书管理系统】用户注册系统实现详解
数据库·spring boot·后端·mybatis
用手手打人5 小时前
SpringBoot(一)--- Maven基础
spring boot·后端·maven
Code哈哈笑7 小时前
【基于Spring Boot 的图书购买系统】深度讲解 用户注册的前后端交互,Mapper操作MySQL数据库进行用户持久化
数据库·spring boot·后端·mysql·mybatis·交互
Javatutouhouduan7 小时前
线上问题排查:JVM OOM问题如何排查和解决
java·jvm·数据库·后端·程序员·架构师·oom
多多*8 小时前
Spring之Bean的初始化 Bean的生命周期 全站式解析
java·开发语言·前端·数据库·后端·spring·servlet