Как получить все данные, хранящиеся в кэше в памяти, с помощью cache-manager

#node.js #nestjs

#node.js #nestjs

Вопрос:

Я использую cache-manager в качестве хранилища данных в памяти, как описано в документе https://docs.nestjs.com/techniques/caching
https://www.npmjs.com/package/cache-manager

Есть ли какой-либо возможный способ получить все данные в качестве примера, например, что-то вроде

 const value = this.cacheManager.getall();
 

Ответ №1:

Существует store свойство, cacheManager из которого вы можете получить все keys и получить данные.

 @Get('get-all-data')
async getData() {
  //Get all keys
  const keys = await this.cacheManager.store.keys();

  //Loop through keys and get data
  const allData: { [key: string]: any } = {};
  for (const key of keys) {
    allData[key] = await this.cacheManager.get(key);
  }
  return allData;
}