【问题标题】:Node.js saving session using Redis storeNode.js 使用 Redis 存储保存会话
【发布时间】:2016-07-02 21:02:20
【问题描述】:

我在使用最新版本的 Express Node.js 处理会话时遇到问题。 我的要求是将用户电子邮件 ID 存储在 /login 路由中,并且需要考虑该电子邮件 ID /home 之类的所有路线。但是我当前的代码没有在 /home 路由中打印电子邮件 ID。非常感谢您的帮助。

我的演示代码在这里

var express = require('express');
var app = express();
var cookieParser = require('cookie-parser');
var session = require('express-session');
var RedisStore = require('connect-redis')(session);
app.set('port',process.env.PORT || 3000);
app.use(cookieParser());
app.use(session({
    resave: false,
    saveUninitialized: false,
    store: new RedisStore({
      host: 'localhost',
      port: 6379
    }),
    secret: 'some string/hash secret'
}));


var counter=0;
app.get('/login', function(request, response){
  //adding some value to request.session
  request.session.email = 'jak@amt.in';
  console.log('sessionID', request.sessionID)
  response.send('email: '+request.session.email);

});
app.get('/home', function (request, response) {
  console.log('home login', request.session.email); // Email not priting here 
  console.log('sessionID - home', request.sessionID); // Session ID is showing 
  response.send('home');
});

if (!module.parent) {
    console.info('Listening ', process.env.PORT || 5000);
    app.listen(process.env.PORT || 5000);
}
module.exports = app;

我收到以下错误

"ReplyError: ERR wrong number of arguments for 'set' command
    at parseError (/home/dibeesh/obpnode6/testproject/node_modules/redis/node_modules/redis-parser/lib/parser.js:161:12)
    at parseType (/home/dibeesh/obpnode6/testproject/node_modules/redis/node_modules/redis-parser/lib/parser.js:222:14)"

【问题讨论】:

    标签: node.js session express redis


    【解决方案1】:

    确保您的 redis 服务器在您运行应用时正在运行。

    【讨论】:

    • 谢谢..它正在运行。还尝试将redis会话保存到heroku db。但同样的错误。
    • 我认为你的 redis 服务器 版本太旧了。如果是这样,请尝试一些最新版本。请参阅下面的链接,github.com/tj/connect-redis/issues/165
    猜你喜欢
    • 1970-01-01
    • 2021-05-22
    • 1970-01-01
    • 2021-05-25
    • 2015-09-18
    • 2020-05-31
    • 1970-01-01
    • 1970-01-01
    • 2019-10-31
    相关资源
    最近更新 更多