📜  connect-redis github - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:40:11.995000             🧑  作者: Mango

Connect Redis - 使用 Redis 存储会话的 Node.js 模块

使用 Connect Redis,您可以将 Redis 用作您的 Node.js 应用程序的会话存储。此模块简单易用,并与 express 应用程序集成得很好。

安装

您可以使用 npm 安装 Connect Redis:

npm install connect-redis
使用

使用 Connect Redis 很简单。首先,您需要将 Redis 客户端传递给 connect-redis:

const session = require('express-session');
const RedisStore = require('connect-redis')(session);

const redisClient = require('redis').createClient();
const store = new RedisStore({ client: redisClient });

app.use(session({
  secret: 'your secret',
  resave: false,
  saveUninitialized: true,
  store: store
}));

如果您使用了 express 应用程序,则还可以使用 express-session 中间件:

const express = require('express');
const session = require('express-session');
const RedisStore = require('connect-redis')(session);

const redisClient = require('redis').createClient();
const store = new RedisStore({ client: redisClient });

const app = express();

app.use(session({
  secret: 'your secret',
  resave: false,
  saveUninitialized: true,
  store: store
}));
配置选项

Connect Redis 提供了许多配置选项来自定义会话存储:

  • client: Redis 客户端实例。
  • host: Redis 服务器的主机名。
  • port: Redis 服务器的端口号。
  • socket: Redis 服务器的 Unix 套接字路径。
  • ttl: 会话的过期时间(以秒为单位)。
  • prefix: Redis key 前缀。
  • db: Redis 数据库编号。
  • pass: Redis 服务器的密码。
  • unref: 如果为 true,则 Redis 客户端将在关闭所有连接后自动关闭(默认为 false)。
const store = new RedisStore({
  client: redisClient,
  host: 'localhost',
  port: 6379,
  socket: '/tmp/redis.sock',
  ttl: 86400, // 一天
  prefix: 'sess:',
  db: 0,
  pass: 'your_password',
  unref: false
});
结论

使用 Connect Redis,您可以轻松地使用 Redis 作为您的 Node.js 应用程序的会话存储。此模块使用简单,与 express 应用程序集成非常好。尝试它,并在您的应用程序中享受 Redis 的强大功能!