在发送来自用户登录端点的响应之前,我在 Express + VueJS 应用程序的节点层中将 cookie 设置为 HttpOnly,如下所示:
res.cookie('ms-sso', response.session.token, { httpOnly: true })
根据转到 Chrome > Application > Cookies,看来以这种方式将 cookie 设置为 HttpOnly 有效:
但是,据我了解,这些 cookie 无法从客户端更新和/或访问,只能从服务器端访问。然而,从客户端代码中,我可以做这样的事情:
document.cookie = `ms-sso=banana`
console.log(document.cookie) // shows `ms-sso=banana` in the console
然而,当我在控制台中输入并输入 document.cookie 时,它会按预期显示“”。我是否误解了打开 HttpOnly 时可编辑的定义,并且所有这些观察结果都是预期的行为?