安装
npm init
npm i express --save
请求参数
- method: 请求方法
- url: 请求地址
- data: 请求参数
get请求参数:
- query: url? + query参数 —> 键值对的形式,多个键值对使用&拼接
- params:
- 注册路由需要声明占位符
- 请求的时候需要填写实例的参数数据
post请求参数:
- query
- params
- 请求体参数:
- 参数在请求体中
- 获取: req.body
- 请求体参数携带的数据量更大相比get方法的query方式
- 数据放在请求体中不是以明文的方式在url中体现,比get请求更加安全
响应方式
返回的方式: res.< method>
- res.end() 直接返回,
- res.send() 根据返回的数据自动作出判断处理,再返回, 如: 如果返回的数据中是中文的内容,send会设置content-type:text/html;charset=utf-8
- res.json() 直接返回, json数据
- res.set() 设置响应头
- res.cookie() 设置cookie
- res.status() 设置响应状态码
中间键
- 本质:函数
- 作用:
- 添加一些扩展功能
- 处理请求头,响应数据,针对请求做一些预处理的工作
- 调用下一个中间键
使用中间键
app.use(中间键函数);
app.use()直接使用中间键函数,可以接收到任何方法,任何路径的请求
注意点:
1、如果有连续的多个中间键函数被使用,不要在靠前的中间键函数中返回数据,容易导致后续中间键中(后续中间键中也返回数据)报错
2、如果中间键和请求的方法共存的情况下,先匹配谁,就执行谁
3、 get, post请求的回调也是中间键函数
基本案例
const express = require('express');
const app = express();
// express.static() 向外暴露静态资源
// express.json() 处理post请求参数 application/json
// express.urlencoded() 处理post请求参数 application/x-www-form-urlencoded
// 思考: 使用的express.json()返回值,返回值是一个函数,而且函数工作完自动调用了next方法