在讨论到单点登录时,使用 token 存储在 Cookie 中,当 Cookie 被禁用后,无法进行登录,以及购物车后续的功能都无法进行, 但是,意外的是,在 Cookie 禁用后,京东也无法实现登录 求大神们给个解决的方案
1
reus 2019 年 2 月 20 日 有啥意外的?
给你钥匙,你转身扔了,锁就开不了,有啥意外的? |
2
namesc 2019 年 2 月 20 日
没有 cookie 保存登录状态,京东怎么知道你有没有登录,要登录必须要打开 cookie 功能。
|
3
jzmws 2019 年 2 月 20 日
cookie 开启了就可以了, 不过现在的移动端 cookie 现在能不用就不用了
|
4
zackwu 2019 年 2 月 20 日
你这话说的...没有 cookie 不能保存登录状态,很奇怪吗?
|
5
xfspace 2019 年 2 月 20 日 via Android 但是,意外的是,在停电后,台式电脑也无法开机 求大神们给个解决的方案
|
8
imdong 2019 年 2 月 20 日
断网以后,我自己的网站打不开就算了,没想到百度居然也打不开!
|
9
cname 2019 年 2 月 20 日 via Android
感谢科普
|
10
ggmood 2019 年 2 月 20 日
那就不用京东咯,京东很多东西比沃尔玛贵,比华润更贵
|
11
liuxey 2019 年 2 月 20 日
你这前后文的“但是”毫无转折关系,Cookie 是现在保持登陆状态最泛用的方式,但是,意外的是,我觉得你并没有真正的理解什么是 Cookie
|
12
ZavierXu 2019 年 2 月 20 日
Cookie 这么好吃,你们为什么要扔掉它!!!
|
13
guojing666 2019 年 2 月 20 日
你发明了一种“但是体”,可以把玩可以盘......它
|
14
dark3212 2019 年 2 月 20 日
京东有线下店,可以解决你这个问题
|
15
oott123 2019 年 2 月 20 日 via Android
虽然楼上都在嘲讽,而楼主的问题也的确有点过分了。
但我要说的是,保持会话除了 cookies 之外当然也有别的办法。比如手机互联网早期 wap 时代用的:在所有链接上增加 sessionid,通过 sessionid 来识别用户。当然,这个方案有很大的安全隐患,开发成本也不小,收益远没有它的好处来得多。 |
16
otakustay 2019 年 2 月 20 日
好奇怪啊,没有 cookie 不能登录曾经确实是很奇怪的事情啊,都会在禁用 cookie 的时候把 sessionid 加在 URL 中的
正如曾经 JS 禁用网站也要保持可用是一种常识一样,这些实践随着时代的推移正在消失。现在的孩子们没经历过那样的时代不了解是没问题的,但是拿着嘲讽的语气去表达会不会有些过分 |
17
otakustay 2019 年 2 月 20 日
再者,只要理解 HTTP 无状态,无论如何也不会把登录和 Cookie 认为是强绑定的唯一实现吧,咋想的……
|
18
learnshare 2019 年 2 月 20 日
只是京东不愿意处理这种极端状况而已
|
19
Liang11734 OP 楼上的回答是我想要的
但是面试的时候,面试官会把问题抛给我们, 假如: 面试官问:Cookie 被禁用,如何实现单点登录 因为 Cookie 被禁用是一个极端的情况 |
20
reus 2019 年 2 月 20 日 @otakustay 讨论的前提就是京东没有用 url 也没有用 local storage 之类的其他方式去保存登录信息,所以禁用了 cookie 就不能登录,这和你说的没有任何关系。难不成你能要求京东使用其他方式?房东就只有钥匙给你,你非要说我要指纹,我要刷卡,我要刷脸,就是不要钥匙,可行吗?
|
21
est 2019 年 2 月 20 日
大家不要笑。我感觉欧盟地区的人应该也会有这个问题。。。没同意网站用 cookie 凭什么功能不能用了
|
22
wu67 2019 年 2 月 20 日
cookie 不能用? 劳资写 local storage ~,~
|
28
morethansean 2019 年 2 月 20 日
@beiyu 所以我看到一个好的物品把 url 发给朋友,他就登录我的账号了?
这权限直接加在 url 中,在现在的网络环境下不被喷爆? |
29
beiyu 2019 年 2 月 20 日
@morethansean #28 嗯是的 如果后端不进一步验证的话 这样对普通用户来说确实是不安全的
|
30
luoway 2019 年 2 月 20 日
这个问题本质上是问 web 前端有哪些跨页面存储的方案。
考虑一下岗位性质,面试官对该问题的重视程度,评估一下面试官水平吧 |
31
lhx2008 2019 年 2 月 20 日
跟踪用户无非就三种方法
1. Cookie 2. SeesionId 挂在参数上,全部 a 链接都要修改 3. SeesionId 存到 localStorage 里面,由 js 脚本主动发起 ajax 请求登录 所以楼主想选哪种都行 |
32
lhx2008 2019 年 2 月 20 日 @lhx2008 当然,既然楼主说了 “但是”,那么就必须三种方法都要加上,然后再加个降级策略,否则,但是, 关掉 Cookie 的 IE6 就登录不了了。
|
34
wolfie 2019 年 2 月 20 日
很正常啊,天猫也一样。
|
35
580a388da131 2019 年 2 月 20 日 via iPhone
禁用第三方后,淘宝也不能用了。
|
37
kernel 2019 年 2 月 20 日 via Android
@lhx2008 本地存储不是只有 cookie, localstorage 和 indexeddb 都行,做成 webapp 的话可能还更方便
|
38
mokeyjay 2019 年 2 月 20 日
能说说你为什么非要禁用 Cookie 吗?
|
40
Liang11734 OP @mokeyjay:其实这是一个面试问题
|
41
wangxiaoaer 2019 年 2 月 20 日
@est #21 不同意网站的协议,凭什么用人家的网站。
|
42
rockss 2019 年 2 月 20 日
给你还是给 JD。
给你:换 APP 啊! 给 JD:给了有没人理我。 |