客户端cookie未使用node.js中的express在redis存储中正确存储

时间:2014-04-11 11:53:40

标签: node.js express redis session-cookies

我使用express和node.js开发了一个应用程序,redis作为会话存储。首先,我将向您展示我的代码。

var express = require('express'),
    redis = require('redis'),

    var app = express();

    app.use(express.urlencoded());
    app.use(express.json());
    app.use(express.cookieParser());
    app.use(express.session({ secret: secret, key: 'express.sid', store: new RedisStore({ host: '127.0.0.1', port: 6379 }), cookie: { maxAge: 3600000 } })); 
    app.use(express.methodOverride());

这对我来说很好,但是当我在浏览器中看到我的请求标题时,它显示的cookie值如下。

Cookie:express.sid=s%3AmF_egbthwH9xtg6E3ts9HHLn.l9zuDq1IcApdTUwIP96vpRSTiDLA99iQS2T4HVpV0tE

但是当我使用redis-cli检查redis时,只是在“sess:”键下显示了一半的键,如下所示。

sess:mF_egbthwH9xtg6E3ts9HHLn

我的结局是否有任何问题/错误?

1 个答案:

答案 0 :(得分:1)

尝试编码'。' (点)在设置cookie之前。它应该工作。您可以在cookie值中使用某些字符。