移动端开发为什么不采用session而是用token
发布网友
发布时间:2022-04-23 18:05
我来回答
共1个回答
热心网友
时间:2023-10-12 05:15
其实token和session不是同一个领域的概念。token是一个字符串,而session是指一个会话,两者既不冲突又不可互相替代。
这里所说的大概是指token和session id(通常存在cookie中)的区别。
Token本身由oauth系列引入后才大规模普及的。主要目的是支持SSO,也就是单点登录,这是oauth系列最主要的需求。当然,也有jasig CAS等基于cookie / session的框架可以支持SSO,不过不如oauth简明。oauth用token作为唯一的凭证,使用第三方服务器可以在验证完token后建立自己的session(广义的,既可以用传统session,也可以用token作为redis中的key),而把用户身份认证工作完全委托给oauth,因此分工比较清晰,成了大量商家共享用户资源来建立自己生态圈的首选。
而传统的session管理方式就很难实现这些了。