Node js express 从接收请求后到返回数据的流程

  1. 引入需要的模块
  // 引入Express模块
    const express = require('express')
    // 引入body-parser模块用于解析请求体
    const bodyParser = require('body-parser')
    

Express 是一个用于 Node.js 应用的 Web 开发框架,它提供了一系列强大的特性来帮助我们创建各种 Web 和移动设备应用。body-parser 是一个 HTTP 请求体解析中间件,使用这个模块可以解析 JSON、Raw、文本、URL-encoded格式的请求体。

  1. 实例化一个Express对象
 // 实例化一个Express对象
    const app = express()

在 Express 中,一个 app 对象代表一个 Express 应用,它是 HTTP 服务器的一部分。

  1. 应用中间件
 // 使用body-parser中间件,解析json格式的请求体
    app.use(bodyParser.json())

中间件就是处理请求的函数,它们可以执行以下任务:对请求和响应对象进行更改、结束请求响应周期、调用堆栈中的下一个中间件。

  1. 定义路由和处理函数
 // 定义一个GET请求的路由和处理函数
    app.get('/api/users/:id', (req, res) => {
      ...
    })

    // 定义一个POST请求的路由和处理函数
    app.post('/api/users', (req, res) => {
      ...
    })
    

这部分定义了服务器对不同 http 请求的响应。app.get 定义了处理 GET 请求的路由,app.post 定义了处理 POST 请求的路由。 路由指的是 URI(或路径)和特定的 HTTP 请求方法(GET、POST等)。每个路由都可以有一个或多个处理函数,这些函数是当路由被匹配时执行的。

  1. 启动服务器

// 在某个端口启动服务器
const port = 3000
app.listen(port, () => {
console.log(Server running at http://localhost:${port})
})

开始接受在指定端口上的 http 请求。Express 应用通过调用 app.listen 将其自身从 Node 服务器变成一个 Express 服务器。这意味着应用侦听连接到指定端口的请求。

下面我给出一段更为详尽的代码:


```javascript
// 引入Express模块
const express = require('express')
// 引入body-parser模块用于解析请求体
const bodyParser = require('body-parser')

// 实例化一个Express对象
const app = express()

// 使用body-parser中间件,解析json格式的请求体
app.use(bodyParser.json())

// 定义一个GET请求的路由和处理函数
app.get('/api/users/:id', (req, res) => {
  // 从请求对象中获取请求参数
  let id = req.params.id

  // 实际应用中,你可能需要查询数据库来获取数据
  let user = { id: id, name: 'John Doe' }

  // 将处理结果以JSON格式返回给客户端
  res.json(user)
})

// 定义一个POST请求的路由和处理函数
app.post('/api/users', (req, res) => {
  // 从请求对象中获取请求体
  let user = req.body

  // 实际应用中,你可能需要将数据保存到数据库
  // 这里我们简单模拟一下,将请求体原样返回
  res.json(user)
})

// 在某个端口启动服务器
const port = 3000
app.listen(port, () => {
  console.log(Server running at http://localhost:${port})
})

以上就是文章全部内容了,如果喜欢这篇文章的话,还希望三连支持一下,感谢!

  • 23
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小纯洁w

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值