ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# connect-redis connect-redis是一个由node_redis支持的Redis会话存储,并且非常快:)。 SETEX命令需要redis> = 2.0.0。 ## Option > Redis客户端是必须的。使用 client 参数直接传递现有客户端,也可以使用host、 port、或 socket参数为您创建。 ### 可选参数: * ttl: 过期时间,默认是session.maxAge, 或者是一天 * disableTTL: 是否允许redis的key有过期时间。这个值优先于ttl * db: redis哪个数据库,默认是0 * pass: 密码 * prefix: key的前缀,默认是 'sess:' * unref: 这个方法作用于底层socket连接,可以在程序没有其他任务后自动退出。 * serializer: 包含stringify和parse的方法,用于格式化存入redis的值。默认是JSON * logErrors: 是否打印redis出错信息,默认false 如果值为true,则会提供一个默认的处理方法(console.error); 如果是一个函数,则redis的报错信息由它来处理 如果值为false,则不处理出错信息 > 此列表中未包含的任何选项将直接传递给redis createClient()方法。 <br> ### 自定义Redis客户端 如果node_redis以外的客户端支持相同的接口,则它们将起作用。 只需将客户端实例作为客户端配置选项传递即可。 已知支持的客户端包括: * ioredis - 增加了对Redis Sentinel和Cluster的支持 ~~~ var session = require('express-session'); var RedisStore = require('connect-redis')(session); app.use(session({ secret: config.session_secret, store: new RedisStore({ port: config.redis_port, host: config.redis_host, db: config.redis_db, pass: config.redis_password, }), resave: false, saveUninitialized: false, })); ~~~