在express之外更新请求会话

在express之外更新请求会话,express,redis,Express,Redis,我在express中使用redisStore 用户会话数据可以在sess:eI6Jnj0gzMkdEvszUciqbcJ9等站点获得,如果我这样做:- redisClient.set('sess:eI6Jnj0gzMkdEvszUciqbcJ9', 'something', function(err){ console.log(err || ' session changed'); }); “会话已更改”实际上在控制台上打印。但是sess:eI6Jnj0gzMkdEvszUciqbcJ9在

我在express中使用redisStore

用户会话数据可以在sess:eI6Jnj0gzMkdEvszUciqbcJ9等站点获得,如果我这样做:-

redisClient.set('sess:eI6Jnj0gzMkdEvszUciqbcJ9', 'something', function(err){
  console.log(err || ' session changed');
});
“会话已更改”实际上在控制台上打印。但是
sess:eI6Jnj0gzMkdEvszUciqbcJ9
在数据库中未更新。我想,express不允许
redisClient.set
更改会话数据。我怎样才能做到呢

另外,当我在heroku上使用redistogo时,更改在我的本地主机上有效,但不起作用

编辑:-

我通过在控制台上运行get'sess:eI6Jnj0gzMkdEvszUciqbcJ9'命令来检查密钥是否未更新。我正在使用redis.createClient

var redisClient = require('redis').createClient( 3374, 'birdeye.redistogo.com', {detect_buffers: true});
redisClient.auth('052cb8c4142g202f7878588dd5fb129', function() {
    console.log('Redis client connected');
});

我只是猜测express.js可能会“自动更新其会话,可能只是用req.session覆盖您的所有更改。”

这个问题与和有什么不同?Express不会(而且AFAIK也不能)对Redis中存储的内容施加任何限制。如何检查数据库中存储的内容?@robertklep这是最新的草稿。在显示的位置,redisClient.set位于express set不更新的键上。我是个坏孩子吗?你如何特别检查数据库中的密钥是否没有更新?你使用Redis客户端吗?您是否假设因为Express没有看到新数据,所以它没有更新?此外,习惯上会编辑以前的问题以添加更多细节,而不是每次获得新信息时都创建新问题。@robertklep让我不要为自己辩护。老实说,你是对的。但我只是在这个问题上停留了两天,现在。在编辑中回答您的问题。我认为Express可能会覆盖会话,特别是因为您似乎正在从“其他地方”更改会话。