在Express应用中,你可以使用**node-redis库来与Redis进行交互,以设置合适的过期时间。首先,确保你已经安装了redisexpress**依赖:

npm install redis express

然后,在你的Express应用中,按照以下步骤设置过期时间:

  1. 导入相关模块:
javascriptCopy code
const express = require('express');
const redis = require('redis');
const client = redis.createClient();
const app = express();
  1. 在需要设置过期时间的地方,使用**expire**方法设置过期时间,例如,将用户权限信息存储到Redis并设置过期时间:
javascriptCopy code
// 假设userId为用户ID,permissions为权限信息
const userId = '123';
const permissions = { read: true, write: false };

// 将权限信息存储到Redis中
client.hmset(`user:${userId}`, permissions, (err, reply) => {
  if (err) {
    console.error(err);
  } else {
    // 设置过期时间(以秒为单位)
    client.expire(`user:${userId}`, 3600); // 这里设置为1小时过期
    console.log(reply);
  }
});

上述例子中,**expire**方法用于设置键 user:${userId} 的过期时间,这里设置为1小时。你可以根据实际需求调整过期时间。

  1. 当需要检查用户权限时,可以使用**hgetall**方法从Redis中获取数据:
javascriptCopy code
const userIdToCheck = '123';

client.hgetall(`user:${userIdToCheck}`, (err, permissions) => {
  if (err) {
    console.error(err);
  } else {
    console.log('User Permissions:', permissions);
  }
});

这样,你就可以在Express应用中合适地设置Redis中存储的数据的过期时间。确保在合适的时机更新过期时间,以确保权限信息始终保持最新。