API平台 - 更改max_age配置值不会更改max-age请求值

时间:2018-06-14 13:10:32

标签: symfony api-platform.com max-age

我有一个使用API​​平台的应用程序,另一个使用我的API。

我想更改max-age值但是当我更改配置中的值时,它在发送请求时不会更改值...

这是我的配置:

api_platform:
  ...
  http_cache:
    max_age: 600
  ...

这是我的请求和响应标头: request and response headers

告诉我我做错了什么。

2 个答案:

答案 0 :(得分:2)

RFC在此处讨论了max-age:Header Field Definitions
此页面也可以为您提供很多帮助:Hypertext Transfer Protocol

可能的 script 值依赖于浏览器/版本以及任何代理

在没有任何明确的标准指导的情况下,适用于缓存控制也是有意义的。

只要您通常需要通常需要,并且选择任意更长的值可能会破坏一些用户代理。

答案 1 :(得分:0)

为什么将响应缓存标头设置为private且max-age = 0的可能解释是有一个打开的会话(即使您不使用它)。发生这种情况时,SessionListener将覆盖缓存头以将其禁用。

为了解决此问题,您只需在防火墙的配置中设置无状态:true即可:

# config/packages/security.yaml
security:
    firewalls:
        main:
            stateless: true