V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sillydaddy
V2EX  ›  前端开发

Cookie 的 Secure 有点迷惑人

  •  
  •   sillydaddy · 2022-10-12 21:09:09 +08:00 · 836 次点击
    这是一个创建于 553 天前的主题,其中的信息可能已经有所发展或是发生改变。

    根据官方说明,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=来设置都不行了——这个“禁止”动作的思维跳跃比较大。

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

    3 条回复    2022-10-13 09:22:14 +08:00
    liyang5945
        1
    liyang5945  
       2022-10-12 22:04:18 +08:00
    Localstorage
    sillydaddy
        2
    sillydaddy  
    OP
       2022-10-13 09:17:11 +08:00
    @liyang5945
    只能如此了。
    sillydaddy
        3
    sillydaddy  
    OP
       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
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3405 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 00:05 · PVG 08:05 · LAX 17:05 · JFK 20:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.