0

我正在尝试使用查询参数在 KONGO 中为某些 URL 配置缓存。

我想要实现的是:

这应该被缓存->GET /my-awesome-service/get-something?filter-one=this&filter-two=that

这应该以不同的方式缓存->GET /my-awesome-service/get-something?filter-one=this&filter-two=their

我面临的GET /my-awesome-service/get-something是被缓存,因此为不同的过滤器返回了不正确的数据。

在此处输入图像描述

4

1 回答 1

0

正如文档中解释的那样,您需要设置查询参数以通过缓存键使用config.vary_query_params或保持未定义以使用所有查询参数。您已经将其设置为,timeframe因此您需要添加filter-onefilter-two

Yaml 应该是这样的:

        plugins:
          - name: proxy-cache
            config:
              cache_control: false
              content_type:
                - application/json
              memory:
                dictionary_name: kong_db_cache
              request_method:
                - GET
              response_code:
                - 200
              strategy: memory
              vary_query_params:
                - timeframe
                - filter-one
                - filter-two
            enabled: true
            protocols:
              - grpc
              - grpcs
              - http
              - https
于 2022-02-23T20:43:34.287 回答