JS session 多用于实时聊天,首先我们先了解一下session机制和原理
session机制:
客户端第一次请求服务端时:服务端会产生一个session对象(用于保存该客户的信息);并且每个session对象都会有一个唯一的sessionID(用于区分其他session);
服务端又会产生一个cookie,并且该cookie的name=JSESSIONID,value=服务端sessionID的值;
然后服务端会在响应客户端的同时将该cookie发送给客户端,至此客户端就有了一个cook(JSESSIONID);
因此,客户端的cookie就可以和服务端的session一一对应(JSESSIONID - sessionID)
客户端第二/n次请求服务端时:服务端会先用客户端cookie中的JSESSIONID去和服务端的session中匹配sessionID ,如果匹配成功,此用户不是第一次访问,无需登录。
session原理:
1.session存储在服务端
2.session是在同一用户请求时共享 ,session同一次会话共享
3.session实现机制:第一次用户在请求时产生一个sessionID并赋值给cookie的JSESSIONID然后发送给客户端。最终通过session的sessionID–cookie的JSESSIONID
session常用方法:
1.getId():获取sessionID
2.boolean isNew():判断是否是新用户(第一次访问)
3.void invalidate():使session失效(退出登录、注销)
session属性:
setAttribute()
getAttribute()
session js操作:
// 保存数据到sessionStorage
sessionStorage.setItem('key', 'value');
// 从sessionStorage获取数据
var data = sessionStorage.getItem('key');
// 从sessionStorage删除保存的数据
sessionStorage.removeItem('key');
// 清空所有sessionStorage保存的数据
sessionStorage.clear();