首页 > 解决方案 > 访问前端节点服务器设置的cookie值

问题描述

目前正在使用节点包 coockie 从后端设置 cookie,如下所示

        res.setHeader('Set-Cookie', cookie.serialize('token', token, {
            maxAge: 60 * 60 * 24 * 7 // 1 week
        }));

所以我可以从前端访问令牌,如下所示

var ca = document.cookie.split(';').map(function (x) {
         return x.trim().split('=');
         }).reduce(function (a, b) {
              a[b[0]] = b[1];
              return a;
         }, {})["token"];

但是当我从后端设置另一个时,第二个不会设置为 cookie。所以作为解决方案,我使用了

 res.cookie('refreshtoken', refreshToken, { maxAge: 60 * 60 * 24 * 7 , httpOnly: true });

所以从这里我可以设置任何没有cookie,但问题是无法从前端访问这个cookie。

那么是否可以从后端设置多个 cookie 并从前端访问所有这些

标签: javascriptnode.jscookiesnpmsetcookie

解决方案


httpOnly: true

这告诉浏览器它应该使 cookie 仅对 HTTP 可用(即对客户端 JavaScript 不可用)。

要使用客户端 JS 阅读它,请不要这样做。

改为将值设置为false


推荐阅读