JavaScript高级程序设计 629页 看不懂
1、cookie到底是存在浏览器还是服务器?
2、获取cookie时是从浏览器还是服务器获取cookie?
3、获取到cookie数据时 还要发送回服务器?
JavaScript高级程序设计 629页 看不懂
1、cookie到底是存在浏览器还是服务器?
2、获取cookie时是从浏览器还是服务器获取cookie?
3、获取到cookie数据时 还要发送回服务器?
cookie是指web浏览器存储的少量数据,该数据会在每次请求一个相关的URL时自动传到服务器中。
1.seseion是存在于服务器端的,cookie是存在于浏览器端,最大容量不超过4kB
2.存储在浏览器当然要在浏览器获取cookie
3.获取到cookie要发送回服务器,这个应该根据具体业务逻辑确定吧
我的看法:
1) cookie到底是存在浏览器还是服务器?
浏览器,并且各个浏览器之间的不同
2) 获取cookie时是从浏览器还是服务器获取cookie?
还是浏览器
3) 获取到cookie数据时 还要发送回服务器?
不一定,既可以在本地验证,也可以将获取的 cookie 通过
HTTP请求的形式发送给服务器:
--------------update--------------
求解惑,为什么都说cookie是服务器生成的?
静态文件也可以保存cookie啊?(测试了一下,似乎无法生效)
例如chrome(startup with --enable-file-cookies):
document.cookie += ";test: test";
console.log(document.cookie);
你可以在chrome的开发工具中选择'application'面板, 再在左侧展开cookies, 就可以看到这个 域名下的所有cookie
cookie用'获取'这个词时, 指的是程序的操作, 比如客户端脚本获取本地cookie.(这个cookie是服务端生成的, 比如php中就可以使用setcookie方法为请求响应添加cookie, 这样你的浏览器拿到这个响应时就会在本地保存这个cookie).
而正常情况下的cookie, 是浏览器每次向服务器发送请求时会自动带上的一小段儿'字符'. 用户标识客户端的身份. 接3
你可以用一段儿js代码获取你浏览器中的cookie.比如document.
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
想象一下你去某个涉密工厂参观,每个门都需要刷卡才能进。
你进大门之前,保安会把你的身份信息登记到他们的门禁系统里(服务器),比如姓名ABC,记到他们的访客状态(SESSION)。之后给你发一张 参观卡(cookie)。
你走到这个公司的每个厂房,都要刷卡才能开门。你一刷卡,门禁上就提示:欢迎参观,ABC。
当你参观完成,离开工厂前,保安说,这个门禁卡送给你留作纪念啦,但是明天这卡就刷不进来了(cookie还在你手里),之后转身在他们系统上记录访客状态ABC:参观结束(SESSION 过期)。
现在再回答你的问题:
1、cookie到底是存在浏览器还是服务器?
答:你的浏览器上,对应服务器上存的叫SESSION。浏览器就相当于故事中的你,门禁卡就相当于cookie,工厂相当于服务器网站,SESSION相当于工厂的访客记录
2、获取cookie时是从浏览器还是服务器获取cookie?
答:cookie是在必要时(比如你要访问工厂,而工厂也要确认你的身份和权限),由服务器发送给浏览器的。
3、获取到cookie数据时 还要发送回服务器?
答:向这个服务器每次发起请求,都会带上cookie,相当于进入每个厂房之前都会刷卡,每次都会确认你的身份。