NodeJS 如何使用KrakenJS将Redis配置为会话存储

zwghvu4y  于 2023-06-05  发布在  Node.js
关注(0)|答案(2)|浏览(464)

使用Express,我可以使用Redis作为会话存储,如下所示:

var express = require('express');
var app = express();
var RedisStore = require('connect-redis')(express);

app.use(express.cookieParser());
app.use(express.session({
    store: new RedisStore({
    host: 'localhost',
    port: 6379,
    db: 'test',
    pass: '123456'
  }),
  secret: '123456789'
}));

但是对于Kraken,会话配置在文件config/middleware.json中。我将文件更改为使用connect-redis,如下所示:

{
    "middleware": {
        "session": {
           "module": "connect-redis",
           "secret": "99b91c387e6e049308fc31d3cfff5fd3149e419c"
        }
    }
}

这样,Kraken确实使用Redis作为会话存储,但我应该如何像Express一样传递Redis的选项(密码,主机,数据库名称......)?

lo8azlld

lo8azlld1#

kraken-js的文档不是很广泛。希望能有所改善。
我们必须深入研究代码,理解逻辑,我们才能解决问题。
希望这能帮助那些想在Kraken.js中使用Redis Session store的人
将“connect-redis”添加到package.json

"dependencies": {
    ...
    "connect-redis": ">=1.0.0"
},

安装“connect-redis”模块

npm install

在config/middleware.json中添加如下配置

{
    "middleware": {
        "session": {
            "module": "connect-redis",
            "config": {
                "host": "localhost",
                "port": 6379,
                "db": 1
            },
            "secret": "a1df0e81ef54d199567befb02761b1834c8b7406"
        }
    }
}

根据需要更改配置
启动/重新启动服务器,它应该工作!
假设你已经有了运行的Redis

相关问题