packages/server/src/modules/redis/redis.service.ts
Methods |
constructor(redisClient: Redis)
|
||||||
Parameters :
|
Async delete | ||||||
delete(key: string)
|
||||||
Parameters :
Returns :
Promise<void>
|
Async get | ||||||
get(key: RedisKey)
|
||||||
Parameters :
Returns :
Promise<string | null>
|
Async getKeys | ||||||
getKeys(pattern: string)
|
||||||
Parameters :
Returns :
Promise<string[]>
|
Async insert | |||||||||
insert(key: string, value: string | number)
|
|||||||||
Parameters :
Returns :
Promise<void>
|
Async validate |
validate(key: string, value: string)
|
Returns :
Promise<boolean>
|
import { Redis, RedisKey } from "ioredis";
import { Inject, Injectable } from "@nestjs/common";
import { IORedisKey } from "./redis.constants";
@Injectable()
export class RedisService {
constructor(
@Inject(IORedisKey)
private readonly redisClient: Redis
) {}
async getKeys(pattern: string): Promise<string[]> {
return await this.redisClient.keys(pattern);
}
async insert(key: string, value: string | number): Promise<void> {
await this.redisClient.set(key, value);
}
async get(key: RedisKey): Promise<string | null> {
return this.redisClient.get(key);
}
async delete(key: string): Promise<void> {
await this.redisClient.del(key);
}
async validate(key: string, value: string): Promise<boolean> {
const storedValue = await this.redisClient.get(key);
return storedValue === value;
}
}