Cookie
cookie由服务器返回,保存在浏览器。后续客户端发送的请求会自动带上token实现自动登录等功能。cookie的保存与发送由浏览器自动实现,无需任何操作。
Session
若不想将数据保存在客户端,可以将数据保存在服务端,并生成一个随机数key
与数据关联,之后将key
返回给浏览器写入cookie。后续服务器可以根据key
查找出保存在服务器的内容。其中key
就是session-id
。session的本质还是cookie,区别就是会话数据全部保存在服务器,客户端只保留session-id
。
Token
服务器存过多数据或者是分布式服务器场景不适合采用session形式,因此还是希望将Token保存到用户端。此外除web以外没有cookie机制,由客户端将"session-id"
在存储系统保持起来,并改名为Token。
JWT技术就是一种Token技术。