菁英数字科技(猩码)-猩码学苑-专注软件开发人才菁英教育

标题: 前端基础-付盼盼-20230616 [打印本页]

作者: 下潜    时间: 2023-6-17 09:15
标题: 前端基础-付盼盼-20230616
一、学习内容


express 中间件概述
- express 是一个中间件组成的框架。
- 每一个 app.get / app.post 都是一个中间件
- 当 app.get / app.post 的回调函数有参数 3 (==next==)。调用 next 方法时,执行完当前中间件就会执行下一个中间件
- 中间件是从上向下执行的,编写中间件时必须==注意中间件的调用顺序==
简单说,中间件(middleware)就是处理 HTTP 请求的函数。
它最大的特点就是,一个中间件处理完,再传递给下一个中间件。 中,会调用一系列的中间件。

关键点: next 方法
如果一个路由中使用 next 方法,则当前中间件执行完成之后,就会向下继续匹配

app.use 方法
- 使用格式: app.use(url, callback)
  - app.use( (req, res, next) => {}): 未设置参数 1,则会监听所有的浏览器请求;不论 get 请求还是 post 请求,也不管请求的 url 地址是什么都会执行。
  - app.use('/index', (req, res, next) => {}): 只监听 url 为 /index 的请求,get 和 post 请求都监听
检测登录状态中间件
方法: 在每个路由中都要检测 isLogin 的状态,除了 /login 和 /checkLogin

express 有五种类别的中间件:
- 应用级别的中间件: 挂载到 app 上的中间件,例如:app.use()、app.get()、app.post()
- 路由级别的中间件: 挂载到 router 对象上的中间件,例如:router.get()、 router.post()
- 错误级别的中间件: 回调函数中,有四个参数 app.use((err, req, res, next)=>{})
- 内置中间件: express.static() , express 提供的唯一内置中间件
- 第三方中间件: express 框架提供的,需要程序员手动安装才能使用的中间件;body-parser 解析 post 表单数据

js 中的单线程和异步
- Javascript 的解析和执行一直是单线程的,但是==宿主环境(浏览器或 Node)==是多线程的
- 每执行一个异步任务,宿主环境就是开启一个子线程来执行
- 异步任务是由宿主环境开启子线程完成,并通过事件驱动、回调函数、队列,把完成的任务, 交给主线程执行;
- Javascript 解析引擎,一直在做一个工作,就是从任务队列里提取任务,放到主线程里执行。







欢迎光临 菁英数字科技(猩码)-猩码学苑-专注软件开发人才菁英教育 (http://www.xingmaxueyuan.com/) Powered by Discuz! X3.4