node.js [express框架] 基础使用(中间件)

120 阅读2分钟

一. express

express是一个基于Node.js平台的极简、灵活的WEB应用开发框架。简单来说,express是一个封装好的工具包,封装了很多功能,便于我们开发WEB应用(HTTP服务)。

<1> 下载安装 express
npm i express
<2> express 的简单使用
  • 导入 express
const express = require('express')
  • 创建应用对象
const app = express()
  • 创建路由
app.get('./home',(req,res)=>{
res.end('hello')
})
  • 监听端口,启动服务
app.listen(3000,()=>{
conslole.log('已经启动了....')
})
<3> 路由

1. 路由的官方定义:

路由确定了应用程序如何响应客户端对待定端点的请求。

2. 前端路由 vs 后端路由:

  • 前端路由是一个路径映射一个组件;
  • 后端路由是一个路径映射一个处理本次请求的响应函数。

3. node.js 中路由的注册(使用):

app.<method>(path,callback)

一个路由的组成有请求方法路径回调函数...

// 匹配 get 请求,且请求路径为 '/test':
app.get('/test',(req,res)=>{
    res.send('hello,test!!!')
})

// 匹配所有类型的请求,且请求路径不能与注册的其他路由进行匹配的:
app.all('*',(req,res)=>{
     res.send(404)
})  可以用来注册 404

4. 在注册路由中获取请求报文中的内容:

node.js中的原生操作:

2372.png

express提供的操作:

2373.png

5. 在注册路由中获取路由参数:

2374.png

<4> 响应设置

1. 一般响应的设置:

2375.png

2. 其他响应【响应其他内容】:

  • 响应文件内容

2376.png

  • 跳转响应

2377.png

  • 下载响应【访问该路由,直接下载某个文件(可指定)】

2378.png

  • json 响应

2379.png

<5> 中间件的使用

中间件本质上是一个回调函数,且该回调函数可以像普通注册路由中的回调函数一样,访问请求对象响应对象作用是使用函数封装公共操作,简化代码。

1. 中间件的类型:

  • 全局中间件 --- 【响应所有请求,即收到所有的请求,都会去执行该中间件回调函数】
  • 路由中间件 --- 【只响应路由匹配的】

2. 全局中间件:

需求是对全部的请求进行记录,记录下请求的地址and发起请求所在的ip地址:

2380.png

3. 路由中间件:

需求是对 /admin /setting 的请求进行暗号核验,如果 URL 携带 code=521 的参数,则暗号成功对接;否则暗号对接失败!!

2381.png

2382.png

4. 静态资源中间件:

2383.png

5. 借助第三方插件获取格式化的请求体: 【body-parser】

npm i body-parser

2384.png

该中间件函数执行完毕后,会向 req 身上添加一个body属性,是处理好了的请求体。