Cookie的工作过程
浏览器发起HTTP请求,服务器会进行cookie设置,也就是Set-Cookie,cookie里面有名和值两个属性,服务器会把名和值属性里的内容都填充完整,然后发送给浏览器,浏览器将cookie保存起来,这样浏览器以后发送的每一个请求都会自动赋上这个cookie.
Cookie是一种数据载体,把Session放入Cookie中送到客户端那边,Cookie跟随着HTTP的每个请求发出去
cookie可以在浏览器看得到,所以如果把用户名和密码放在cookie里使很不安全的,所以就有了Session
Session的工作过程
首先使用用户名和密码发送给服务器,经过服务器核对之后,如果密码是对的,则在服务器这边创建一个Session ID和会话结束时间,服务器使用Cookie将Session ID发送给浏览器,再将Cookie的有效期设置为会化结束时间。浏览器拿到cookie之后进行保存。所以浏览器后边的访问都会自动发送这个Session ID给服务器,直到Cookie的有效期失效之后,浏览器一般会自动删除这个Cookie,在Cookie失效之后,用户就需要重新输入密码进行登录了。
Session诞生并保存在服务器那边,由服务器主导一切,
JWT工作过程
用户第一次登录网页后,服务器会生成一个JWT,服务器不需要保存这个JWT,只需要保存JWT的签名密文,然后把JWT发送给浏览器,可以让浏览器以Cookie的形式进行存储,这样每次浏览器都会把这个JWT发送给服务器,这样就不需要重新输入账号密码。和Session很类似,只是JWT是保存在用户那边。
Token是诞生在服务器,但保存在浏览器,由客户端主导一切