| import MemoryCache from './memory_cache' |
| import FileCache from './local_file_cache' |
| import MongoCache from './mongo_db_cache' |
| import BLOG from '@/blog.config' |
|
|
| |
| |
| |
| |
| |
| export async function getDataFromCache(key, force) { |
| if (JSON.parse(BLOG.ENABLE_CACHE) || force) { |
| const dataFromCache = await getApi().getCache(key) |
| if (JSON.stringify(dataFromCache) === '[]') { |
| return null |
| } |
| return getApi().getCache(key) |
| } else { |
| return null |
| } |
| } |
|
|
| export async function setDataToCache(key, data) { |
| if (!data) { |
| return |
| } |
| await getApi().setCache(key, data) |
| } |
|
|
| export async function delCacheData(key) { |
| if (!JSON.parse(BLOG.ENABLE_CACHE)) { |
| return |
| } |
| await getApi().delCache(key) |
| } |
|
|
| |
| |
| |
| |
| function getApi() { |
| if (process.env.MONGO_DB_URL && process.env.MONGO_DB_NAME) { |
| return MongoCache |
| } else if (process.env.ENABLE_FILE_CACHE) { |
| return FileCache |
| } else { |
| return MemoryCache |
| } |
| } |
|
|