@i1k/redis-cache-client
v0.0.11
Published
Redis cache client with the same interface as @ik/smart-cache-manager.
Downloads
2
Readme
@i1k/redis-cache-client
Redis cache client with the same interface as @i1k/smart-cache-manager. Uses ioredis under the hood.
Installation
# using pnpm
pnpm i @i1k/redis-cache-client
# using npm
npm i @i1k/redis-cache-client
Usage
import RedisCacheClient from '@i1k/redis-cache-client'
// supports all ioredis options
const cacheClient = new RedisCacheClient()
cacheClient.set('key', 'value')
API Reference
interface ICacheClient {
set: (key: string, value: string) => Promise<'OK'>
get: (key: string) => Promise<string | null>
del: (key: StringOrGlobPattern | StringOrGlobPattern[]) => Promise<string[]>
clear: () => Promise<string[]>
keys: (pattern: StringOrGlobPattern | StringOrGlobPattern[]) => Promise<string[]>
}
set
To set a key-value pair.
cacheClient.set('foo', 'bar')
// => Promise<'OK'>
cacheClient.set('foo/main', 'bar')
// => Promise<'OK'>
get
To get a value by key.
cacheClient.get('foo')
// => Promise<'bar'>
cacheClient.get('bar')
// => Promise<null>
del
To delete a key-value pair by a specific key or a glob pattern.
cacheClient.del('foo')
// => Promise<['foo']>
cacheClient.del('foo*')
// => Promise<['foo', 'foo/main']>
cacheClient.del(['foo', 'foo/*'])
// => Promise<['foo', 'foo/main']>
clear
To clear the store.
cacheClient.clear()
// => Promise<['foo', 'foo/main']>
keys
To get keys by a specific key or a glob pattern.
cacheClient.keys('foo')
// => Promise<['foo']>
cacheClient.keys('foo*')
// => Promise<['foo', 'foo/main']>
cacheClient.keys(['foo', 'foo/*'])
// => Promise<['foo', 'foo/main']>