const apicache = require('apicache'); const redis = require('redis'); let cacheWithRedis = apicache .options({ debug: true, defaultDuration: '1 hour', redisClient: redis.createClient() }) .middleware; // higher-order function returns false for responses of other status codes (e.g. 403, 404, 500, etc) const onlyStatus200 = (req, res) => res.statusCode === 200 const cacheSuccesses = cacheWithRedis('1 hour', onlyStatus200); const cache1year = cacheWithRedis('1 year', onlyStatus200); module.exports = { cacheSuccesses, cache1year }