Cookie 的 Secure 有点迷惑人

2022-10-12 21:09:09 +08:00
 sillydaddy

根据官方说明,cookie 的属性项包含 secure 时,不会将 cookie 在 header 中明文发送到服务器,也就是说只有 https 协议下才会发送此 cookie ,防止被中间人攻击。

比如

document.cookie = "tagname = test; secure" 

本来这点是确保安全的,挺好。

但是根据 https://stackoverflow.com/questions/37234687/how-to-set-cookie-secure-flag-using-javascript 的解释,如果是 http 协议的话,不光不能发送,连在浏览器端通过 document.cookie=来设置都不行了——这个“禁止”动作的思维跳跃比较大。

那我怎么存一些只在浏览器端保存一段时间的信息啊?😳

845 次点击
所在节点    前端开发
3 条回复
liyang5945
2022-10-12 22:04:18 +08:00
Localstorage
sillydaddy
2022-10-13 09:17:11 +08:00
@liyang5945
只能如此了。
sillydaddy
2022-10-13 09:22:14 +08:00
刚看到,文档里确实有说 “Insecure sites (with http: in the URL) can't set cookies with the Secure attribute. ”

https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies#restrict_access_to_cookies

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

https://www.v2ex.com/t/886467

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

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

© 2021 V2EX