CacheInterceptor для конкретного ключа - PullRequest
0 голосов
/ 10 октября 2019

Я настраиваю встроенный пакет NestJS CacheInterceptor from @nestjs/common.

Я успешно настроил кеширование для одной конечной точки, однако этот кешируется для каждого пользователя, а не для запроса, пожалуйста, дайте мне знать, какя могу это изменить?

Я не пытался ничего сумасшедшего там, чтобы решить проблему самостоятельно, так как, похоже, отсутствует метод для регистра Interceptor или CacheModule.

Register:
CacheModule.registerAsync(
        {
            useFactory: () => ({
                ttl: 10,
                max: 100,
            })
        }

Controller specific method:

@Get()
@UseInterceptors(CacheInterceptor)
@ApiBearerAuth()
@UseGuards(AuthGuard('jwt'))
async test(@Request() req) {
  return req.user as UserJwt;
}

Как я могузаставить CacheManager кэшировать кеши определенных пользователей? Например, user1 должен вернуть 1, а user2 должен вернуть 2, в настоящее время видна только 1, даже для user2, что недопустимо.

...