http协议的无状态性
指的是客户端的每次http请求都是独立的,连续多个请求之间没有直接的关系,服务器不会主动保留每次http请求的状态。可以用cookie突破http的无状态性限制。
cookie在身份认证中的作用:客户端第一次请求服务器的时候,服务器通过响应头的形式,向客户端发送一个身份认证的cookie,客户端会自动将cookie保存到浏览器中。随后,在客户端浏览器每次请求服务器的时候,浏览器会自动将身份认证相关的cookie,通过请求头的形式发送给服务器,服务器即可验明客户端的身份。
cookie不具有安全性,为了提高身份认证的安全性,就需要用到session认证机制。
session的工作原理:将session信息保存在服务器中。
在express中使用session认证
配置express-session中间件
//导入session中间件
var session = require('express-session')
//配置session中间件
app.use(session({
secret:'keyboard cat', //secret属性的值可以为任意字符串
resave:false, //固定写法
saveUninitialized:true //固定写法
}))
向session中存数据
当中间件配置成功后,即可通过