首页 > 解决方案 > httpOnly cookie 可见

问题描述

我正在创建基于 jwt 令牌的会话,并使用 httpOnly 参数将该令牌传递给客户端,但 cookie 在浏览器中可见这里是照片:在此处输入图像描述 这是代码

const token = jwt.sign({id :payload}, process.env.SECRET, {
            expiresIn: 10
        })

        console.log(token)
     res.cookie('token', token, {
            httpOnly: true
        });

为什么“令牌cookie”可见的问题是什么?

标签: node.jscookiesjwt

解决方案


来自MDN

为了防止跨站点脚本 (XSS) 攻击,JavaScript 的 Document.cookie API 无法访问 HttpOnly cookie;它们只发送到服务器。例如,保持服务器端会话的 cookie 不需要对 JavaScript 可用,并且应该设置 HttpOnly 标志。

HttpOnly 标志不会阻止 cookie 可见,但会阻止 JavaScript 访问。Cookie 无法隐藏


推荐阅读