为什么 APP 要用 token 而不用 session 认证?

2014-11-22 00:20:40 +08:00
 lcqtdwj
如果只是与自己的服务器交互的话,APP的认证和Web的认证有什么区别呢?
115370 次点击
所在节点    程序员
49 条回复
wind4
2014-11-23 01:24:14 +08:00
Session表示的是会话状态,通过sessionid来确定客户端的身份,找回状态。
Token注重授权,拿着这个token就可以享有特定的功能权限。
至于安全性,非HTTPS有安全性可言吗?HTTPS就一定安全吗?
wind4
2014-11-23 01:26:20 +08:00
Session和Token都是有效期的,不过它们的生命周期不一样。
xinyu198736
2014-11-23 22:50:15 +08:00
关键是大多数app啊的token啊 就是给每个用户生成一个字符串而已,顶多加上个过期时间什么的。感觉讨论偏离方向了。。。
auth什么的,token只是其中的一个小概念而已。
sampeng
2014-11-24 18:37:12 +08:00
@SoloCompany 一个是在get里,一个是在http header里。两个从本质上来说真没啥区别,token本身你可以做成超牛逼的加密一堆登陆的信息,也可以做成key.有兴趣可以去抓一下sina的登陆机制。很有意思。
只要有闲情,session也做成和token一样的也没什么问题。

不管是有效期,发送方式也好,从http本质来说,都只是字符串。是人为的赋予众多含义。把自己束缚在这些理论里的时间,还不如多解决点项目bug。难道说某些服务把sessionid的名字改了不叫seesion了。就不认识了?

顶19搂,透过现象看本质。
GentleSadness
2016-09-19 10:54:36 +08:00
@zhicheng 看了这么多,你的答案最靠谱


简单来说,如果你的用户数据可能需要和第三方共享,或者允许第三方调用 API 接口,用 Token 。
如果永远只是自己的网站,自己的 App ,用什么就无所谓了。
HaoC12
2016-12-04 18:57:54 +08:00
@zhicheng 后台想要同时给 web 和 app 提供服务应该怎么办?
alian
2017-04-26 18:14:28 +08:00
@SoloCompany @zhicheng 同请教下,同时需要给 web 和 app 提供服务的 api 认证如何设计呢?感觉 token 用在 app 和服务器和服务器之间比较好,因为涉及加密。但是在 web 端就感觉不太现实了。还是同时用两套方案比较好呢, session 和 token ?
xiaomeimei
2017-06-27 21:35:27 +08:00
这个属于 HTTP 协议基础,不值得开贴吧!还有,楼上有很多是错误的理解!
geeksun
2017-11-30 17:12:33 +08:00
APP 多数是面向 C 端用户的,使用 token 来识别每个 C 端用户比较方便。如果是 PC 端系统,使用 session 处理比较方便。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/148426

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX