node.js - Nodejs 中的 connect-redis

标签 node.js session redis

我在我的 nodejs 应用程序 (express 4.x) 中使用了 nodejs/express/redis/express-session

redis 初始化由 connect-redis/session 框架在后台完成。到目前为止它有效。现在我需要用redis来存储session之外的其他数据,world希望有session store以外的新store。只能开一家店吗?

如果只有一个存储,是否可以使用由 connect-redis/session 初始化的 redis 客户端?如何获取?

感谢您的帮助!

现在的代码是:

var express = require('express');
var session = require('express-session');

// pass the express to the connect redis module
// allowing it to inherit from session.Store
var RedisStore = require('connect-redis')(session);

....
// Populates req.session
app.use(session({
  resave: false, // don't save session if unmodified
  saveUninitialized: false, // don't create session until something stored
  secret: 'keyboard cat',
  store: new RedisStore
}));

最佳答案

您实际上需要为其他任何东西初始化一个新的客户端,因为 session 库在幕后处理它自己的客户端。

您很可能应该导入 redis 库本身,制作您自己的客户端,并将其用于所有 future 的请求等。

关于node.js - Nodejs 中的 connect-redis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27439855/

相关文章:

node.js - Nodejs Azure Redis 缓存永远挂起并读取 ECONNRESET 错误

python - 如何在 Google App Engine Python 应用程序的模块之间共享 session ?

c# - ServiceStack RedisMessageQueueClient 异常行为

c# - 在 .ashx 文件中创建了一个 session 并想在 .aspx 页面中访问但我发现了空值

php - 如何在redis的laravel队列中获取所有待处理的作业?

redis - 如何配置基于Spring Boot框架的JedisConnectionFactory超时时间?

javascript - 如何运行多个js服务器

node.js - 给定以下文件结构,如何运行基本的 Protractor 测试?

mysql - 使用openshift在mysql数据库上访问被拒绝

c# - 计算 Web 应用程序的在线用户数