-1

我有一个带有 API 平台的应用程序和另一个使用我的 API 的应用程序。

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

这是我的配置:

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

这是我的请求和响应标头: 请求和响应标头

告诉我我做错了什么。

4

2 回答 2

2

RFC 在此处讨论 max-age:标头字段定义
此外,此页面可以为您提供很多帮助:超文本传输​​协议

可能的max-age值取决于浏览器/版本和任何代理

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

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

于 2018-06-14T13:41:27.940 回答
1

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

为了解决这个问题,您只需在防火墙的配置中设置 stateless: true :

# config/packages/security.yaml
security:
    firewalls:
        main:
            stateless: true
于 2020-06-20T13:14:12.463 回答