存储节点使用Azure Redis缓存的JS express会话
问题描述:
我试图使用Azure构建Express 4 Web应用程序。我在几篇文章中发现我可以将会话存储在Azure Redis缓存中。但是,我应该如何将我的Web应用程序连接到Redis缓存?存储节点使用Azure Redis缓存的JS express会话
var session = require('express-session');
var redis = require('redis');
var RedisStore = require('connect-redis')(session);
var client = redis.createClient(6380, 'MyHost', { auth_pass: 'MyPass', tls: { servername: 'MyHostName' } });
app.use(session({
secret: 'keyboard cat',
key: 'sid',
resave: false,
saveUninitialized: false,
store: new RedisStore(client);
}));
但是,当我运行应用程序时,它会返回一个错误。说 TypeError:this.client.unref不是函数
我该如何解决这个问题?谢谢!
答
您可能会在构造函数RedisStore
中出错。
变化的代码store: new RedisStore(client);
以下行如下:
store: new RedisStore({client: client});