前端身份认证
在Express中使用Session认证
Session需要搭配Cookie进行认证
什么是Cookie
Cookie是存储在浏览器中的一段不超过4kb的字符串,由一系列的键值对组成,以及Cookie有效期、安全期、使用范围的可选属性组成。不同域名下的Cookie是各自独立的,不同域名的不能相互访问各自的Cookie。每当客户端发起请求时,会自动把所有未过期的Cookie一同发送到服务器。
Cookie特性:
- 自动发送
- 域名独立
- 过期时限
- 4kb限制
Cookie在身份认证中的作用
客户端第一次请求服务器时,服务器通过响应头的形式,向客户端发送一个身份认证的Cookie,而客户端会自动将Cookie保存在浏览器中。之后的每次请求,浏览器会自动将身份认证相关的Cookie,通过请求头的形式发送给服务器,服务器即可借此验证身份。
Session的工作原理
安装express-session中间件
安装express-session中间件
npm i express-session
导入注册并进行配置
const session = require("express-session");
server.use(session({
secret:"keyword", // secret 属性的值可以为任意字符串
resave: false,