当前位置:   article > 正文

nodejs中使用ioredis库操作redis_ioredis使用

ioredis使用

1.初始化

const Redis = require('ioredis');

// 创建 Redis 客户端实例,设置默认过期时间
const redis = new Redis({
  host: '127.0.0.1',
  port: 6379,
  password: 'password',
  // 设置默认过期时间为 60 秒
  defaultExpiry: 60,
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

可以在初始化 Redis 客户端实例时指定默认的过期时间,它将用于设置 Redis 中的键值对的过期时间。

这样,在后续执行 Redis 命令时,如果没有指定具体的过期时间,将使用该默认过期时间设置键值对的过期时间。

2.列表操作 list

2.1 添加元素到列表
// 添加元素到列表中
redis.lpush('list-name', 'item1', 'item2', 'item3');
  • 1
  • 2

list-name 就是列表的 key,列表名,后面是添加的元素。
lpush: 表示从左侧添加,顾名思义,还有rpush, 从右侧添加。

2.2 获取列表元素
// 获取列表中的所有元素
redis.lrange('list-name', 0, -1).then((result) => {
  console.log(result);
});
  • 1
  • 2
  • 3
  • 4

可以自己指定下标,获取区间元素。0,-1 是获取所有元素。

2.3 获取列表长度
// 获取列表长度
redis.llen('list-name').then((result) => {
  console.log(result);
});
  • 1
  • 2
  • 3
  • 4
2.4 删除元素
// 删除列表中的元素
redis.lrem('list-name', 1, 'item1').then((result) => {
  console.log(result);
});
  • 1
  • 2
  • 3
  • 4

参数介绍:

  • 列表的 key 值。
  • 要删除的元素个数。它有三种取值:
    • 如果传入 0,表示删除所有等于第三个参数 value 的元素;
    • 如果传入一个正数 n,表示删除最多 n 个等于 value 的元素;
    • 如果传入一个负数 -n,表示删除最多 n 个等于 value 的元素,并且从尾部开始向前遍历列表删除元素,例如 -1 表示从尾部开始删除第一个值等于 value 的元素。
  • 要删除的元素的值。
2.5 根据下标获取元素

[‘ni’, ‘hello’, ‘hhha’]

// 根据下标获取元素
redis.lindex('list-name', 1, (err, result) => {
  console.log(result); // 输出 'hello'
});
  • 1
  • 2
  • 3
  • 4
2.6 限定长度,截取
redis.ltrim("list-name", 0, 5);
  • 1

保留最近的6个。

2.7 删除最早的元素pop
redis.lpop("list-name");  // 删除最早的元素
  • 1

3. 键值对操作

设置 key 的值为 value:
redis.set("key", "value");

//获取 key 对应的值:
redis.get("key", (err, result) => {
  console.log(result);
});

//判断键是否存在:
redis.exists("key", (err, result) => {
  if (result === 1) {
    console.log("key exists");
  } else {
    console.log("key does not exist");
  }
});

//删除键:
redis.del("key");

//设置键的过期时间:
redis.expire("key", 30);  // 30 秒后过期

//自增计数器:
redis.incr("counter", (err, result) => {
  console.log(result);
});

//自减计数器:
redis.decr("counter", (err, result) => {
  console.log(result);
});

//添加元素到集合:
redis.sadd("myset", "value1", "value2", "value3");

//删除集合中的元素:
redis.srem("myset", "value1", "value2");

//获取集合中所有成员:
redis.smembers("myset", (err, result) => {
  console.log(result);
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/786626
推荐阅读
相关标签
  

闽ICP备14008679号