0

我正在使用带有 express 和 cookie-session 库的 node.js,并且在请求处理程序中,req.session.id 是未定义的 - 任何人都可以提供有关创建和使用带有 cookie 会话或任何基于 cookie 的会话库的会话 ID 的建议表示?

编辑:我的 cookie-session 设置如下

var session = require('cookie-session');    
app.use(session({
            key: 'express.sid',
            secret: secretKey,
            saveUninitialized: true,
            resave: true,
            cookie: {
                maxAge: 1000 * 60 * 60 * 72,
                httpOnly: true,
                secure: true
            }
        }));

然后无论我有一个端点,例如。

router.get('/api/something', function (req, res) {

req.session.id 和 req.sessionID 未定义。如果我使用普通的快速会话,它们就会被填充。

4

1 回答 1

0

我现在通过设置解决了这个问题

req.session.id = req.session.id || uuid.v4() 

这段代码只在我的记录器中的一个位置完成,所以是一个简单的调整,但我觉得它必须是其他 cookie-session 用户在某个时候必须解决的问题!我暂时将其设置为答案,希望有更好的答案能取代它。

于 2015-01-14T22:29:53.347 回答