强制浏览器在缓存响应中考虑 cookie 值

Forcing browser to consider cookie value in cacheing response

我维护着一个网站,该网站的首页根据语言 cookie 的值使用不同的语言。但是,当浏览器缓存此页面时,它不会考虑为该 lang cookie 发送不同的值可能会返回不同的页面,导致它缓存并显示旧的语言值,即使在用户表示偏好后也是如此不同的语言。我可以告诉浏览器这个 cookie 应该影响缓存决策吗?如果是,如何影响?

自己在 HTTP Vary header 中找到了解决方案。添加

Vary: Cookie

如果浏览器的任何 cookie header 不同,将导致浏览器认为请求不同,这对于我所拥有的用例来说已经足够了(尽管当有多个 cookie 时它可能效率低下,只有一些这会影响请求的结果)