Joh*_*ohn 6 javascript redis typescript express-session
所以我想做的是创建一个会话并将其存储在redis中。我按照这个 github 存储库https://github.com/tj/connect-redis中的 API 进行操作。
但我在“client”一词中收到此错误:预期类型来自属性“client”,该属性在“RedisStoreOptions”类型上在此处声明。
这是我使用的代码:
import redis from 'redis';
import session from 'express-session';
import connectRedis from 'connect-redis';
const app = express();
const RedisStore = connectRedis(session);
const redisClient = redis.createClient({ legacyMode: true });
redisClient.connect().catch(console.error);
app.use(
session({
store: new RedisStore({ client: redisClient }),
saveUninitialized: false,
secret: "keyboard cat",
resave: false,
})
)Run Code Online (Sandbox Code Playgroud)
错误发生在这里:
store: new RedisStore({ client: redisClient })Run Code Online (Sandbox Code Playgroud)
更具体地说,是“客户端”这个词。
小智 37
代替
import redis from 'redis';
Run Code Online (Sandbox Code Playgroud)
使用
import * as redis from 'redis';
Run Code Online (Sandbox Code Playgroud)
小智 2
我猜你使用的是 TypeScript,我遇到了这个问题,你安装了吗:
@types/redis
@types/connect-redis
@types/express-session
Run Code Online (Sandbox Code Playgroud)
我这样做了,但客户端一直出错,所以我卸载了所有 3 个 @types,并注意到 redis 不需要您声明模块,所以我只安装了express-session 和 connect-redis 的类型
npm 我 @types/connect-redis @types/express-session --save-dev
纱线添加 @types/connect-redis @types/express-session -D
| 归档时间: |
|
| 查看次数: |
11174 次 |
| 最近记录: |