0.0.11 • Published 2 years ago

@i1k/redis-cache-client v0.0.11

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

@i1k/redis-cache-client

npm version codecov

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']>

License

MIT

0.0.11

2 years ago

0.0.10

2 years ago

0.0.9

2 years ago

0.0.8

2 years ago

0.0.7

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago