如何添加自定义ttl以在nestjs中的任何路由上进行缓存

时间:2019-05-13 12:54:06

标签: nestjs

你好,我正在使用缓存模块在Nest js中进行缓存,正如我在文档中所读到的,您可以在注册函数中设置ttl时间

 CacheModule.register({
      ttl: 200000,
      max: 1000
    })

我很困惑,如何将自定义ttl设置为任何路由,所以如果有的话,就应该这样

@UseInterceptors(CacheInterceptor)
export class TestController {

  @Get('testData')
  getRequest(@Request() req: Request, @Query() query) {
      return "I AM CACHED";
     }

 }

所以getRequest处理程序仅缓存20秒,例如不缓存200000

1 个答案:

答案 0 :(得分:0)

我建议您看看

  • useGlobalIntercptor
  • “ APP_INTERCEPTOR”,如果您想使用注入功能

在每个处理程序上应用缓存拦截器

这里的链接https://docs.nestjs.com/interceptors