Express学习笔记系列-5.操作MongoDB-mongoose

什么是中间件?

匹配路由之前或者匹配路由完成后做的一系列操作。

Express应用可使用的中间件:

  1. 应用级中间件
  2. 路由级中间件
  3. 错误处理中间件
  4. 内置中间件
  5. 第三方中间件

应用级中间件

用于权限判断。

路由级中间件

用的比较少

错误处理中间件

内置中间件

第三方中间件

用的非常多,学习Express的大部分时间都是在学习第三方中间件。

下面介绍一些常用的第三方中间件:

body-parser

加密Cookie

express-session

session是另一种记录客户状态的机制,不同的是Cookie保存在客户端浏览器中,而session保存在服务器上。

Cookie数据存放在客户的浏览器上,Session数据放在服务器上。Session相比Cookie要更安全一些。由于Session保存到服务器上,所以当访问量增多的时候,会比较占用服务器的性能。单个cookie保存的数据大小不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。Session 没有这方面的限制。Session是基于Cookie进行工作的。

当浏览器访问服务器并发送第一次请求时,服务器端会创建一个session对象,生成一个类似于key,value的键值对,然后将key(cookie)返回到浏览器(客户)端,浏览器下次再访问时,携带key(cookie),找到对应的session(value)。