diff --git a/lib/middleware/redis-cache.js b/lib/middleware/redis-cache.js index bc06d217f..de0129dd6 100644 --- a/lib/middleware/redis-cache.js +++ b/lib/middleware/redis-cache.js @@ -43,7 +43,13 @@ module.exports = function(options = {}) { options.app.context.cache = { get: async (key) => { if (key) { - return await redisClient.get(key); + const value = await redisClient.get(key); + if (value) { + let ttl = redisClient.ttl(key); + ttl = ttl > expire ? ttl : expire * 2; + await redisClient.setex(key, ttl, value); + } + return value; } }, set: async (key, value, maxAge) => {