如何检索下一个请求的快速会话cookie(节点脚本)

时间:2014-12-10 18:06:13

标签: angularjs node.js session cookies express

我正在使用angular 1.2.23和nodejs服务器。

我根据快递会话1.9.3进行了身份验证。

以下是我给予表达的选择

return {
    name: 'session',
    secret: signatureKey,
    cookie: {
        httpOnly: true,
        secure: getEnvName() === 'production',
        maxAge: 30 * 60 * 1000
    },
    resave: true,
    saveUninitialized: true
};

我需要做一个nodejs脚本,它将为每个用户授权和获取数据。

操作应该是这样的

    每个用户
    • POST请求(登录,也会创建会话)
    • 获取请求(数据)
    • 获取请求(注销)

第一个请求创建会话,并返回一个用户项。 第二个请求有一个中间件,需要有一个有效的http cookie。

我正在尝试找到一种方法来获取和发回第二个请求的cookie,我找不到任何文档。

我接受任何建议。

1 个答案:

答案 0 :(得分:1)

你能使用快递吗?

我遇到了同样的问题,并且不知道文件

只有第一个请求才会响应cookie

当被请求时,mongodb中的cookie存储过期修改

但是浏览器中的cookie(已响应)永远不会改变,直到它过期然后才会获得新的cookie

与asp.net如此不同,jee ......

我编辑快递会话代码也解决问题

“version”:“1.11.3”

表达会话/ index.js

找到字符串“shouldSetCookie”

旧代码

 if (!shouldSetCookie(req)) {
    return;
  }
 setcookie(res, name, req.sessionID, secrets[0], cookie.data);

只需删除“restun”,每个请求都会获得带有新过期的cookie

新代码      if(!shouldSetCookie(req)){      }      setcookie(res,name,req.sessionID,secrets [0],cookie.data);

以这种方式你可以编辑cookie和setcookie