cache-store-service
TypeScript icon, indicating that this package has built-in type declarations

0.1.1 • Public • Published

Cache store service

Simple package for fetch data from cache.

You don't need to get or set the data from cache; if the cache key it's empty set in the cache the result of a promise, if cache it's not empty get the result from cache.

Use Nodejs cache in memory or Redis.

Install

npm install cache-store-service --save

Usage

Save in Nodejs memory

const CacheService = require('cache-store-service')
const cacheService = new CacheService()
const promise = Promise.resolve('data-to-save')
// time in seconds
cacheService.fetch('cache-key-string', 60 * 60)(promise).then( response => {
  console.log(response)
});
// data-to-save

Save in redis

const Redis = require('ioredis')
const CacheService = require('cache-store-service')
const cacheService = new CacheService(new Redis())
const promise = Promise.resolve('data-to-save')

cacheService.fetch('cache-key-string', 60 * 60)(promise).then( response => {
  console.log(response)
});
// data-to-save

Example http request

const Redis = require('ioredis')
const axios = require('axios')
const CacheService = require('cache-store-service')
const cacheService = new CacheService(new Redis())
// create custom promise for save the response.data object
const promise = new Promise(resolve => {
  axios.get('https://jsonplaceholder.typicode.com/todos')
    .then(response => resolve(response.data))
  )
})

cacheService.fetch('jsonplaceholder-todos', 60 * 60)(promise).then( response => {
  console.log(response)
});
// [{ "userId": 1, "id": 1}]

Package Sidebar

Install

npm i cache-store-service

Weekly Downloads

0

Version

0.1.1

License

MIT

Unpacked Size

15.1 kB

Total Files

17

Last publish

Collaborators

  • miguemasx