有没有不基于cookie的单点登录策略?

此前使用过cas做单点登录,做了一半发现这个不可行,因为应用场景的限制不能基于cookie来识别用户通过验证与否。
在sof上面也提过问,就是说让在url里面加入token,不过不太理解。
请问大家是否有做过相关的东西,如果有的话,能帮我解惑吗?

阅读 12.9k
4 个回答

其实 Cookie 在用户登录里的作用也只是存一个 Session ID 而已,你可以自己实现一套 Session 机制把 Session ID 通过 URL 来传递。

在很久很久以前那些手机版网站(那时候手机普遍不支持 Cookie)就是这么做的。

其实与其在网站上面做这么恶心的 workaround,不如在客户机上面处理。比如说用具备回话隔离功能的浏览器(比如说 Google Chrome 登录不同的 Google 账户后相互之间的 Cookie 就是不互通的)。

通过COOKIE来判断用户是否登录时必须的。除非你非要在URL里传递TOKEN,那谁也拦不住你,那你就自己封装一个URL的处理工具吧。页面内所有的点击链接包括form表单提交都增加隐藏域吧。

你试过同时在一个浏览器里面登陆2个支付宝或者淘宝的账号吗?

怎么弄的?

服务器端还有个叫session的东西...

可以通过html5本地存储 甚至webSQL 保存原本的sessionID 但其实原理都一样

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题