摘要:
当客户端通过HTTP请求 服务端建立session时候
session 存储在服务端
那么众多浏览器都发送请求 创建session 服务器怎么辨别浏览器 对应哪一个session呢?
实际上,在服务器创建session同时便会响应浏览器一个cookie 这个cookie存储的是他在服务器中的 sessionID
这样 浏览器带着含有sessionid的cookie去找服务器 自然就能找到属于自己的session了
// session示例
@RequestMapping(path = "/session/set",method = RequestMethod.GET)
@ResponseBody
public String setSession(HttpSession session){
/* session可以存储任意类型的数据
* 保存在服务端 比较安全 通过 cookie中的sessionID ("sessionID",2)
* 来辨别浏览器从而 获取其中内容
* */
session.setAttribute("id",1);
session.setAttribute("name","杨小博");
return "set session";
}
区别
cookie 只能存储 字符串键值对 且存储的内容较小 并且保存在客户端 不安全
而session保存在服务端 可以存储任意类型数据
因此 我们一般将cookie和session配合使用
在客户端浏览器保存sessionID 键值对的cookie
在服务端保存用户信息session