2

Chrome的緩存是否支持HTTP Vary標頭?對於特定的url請求,服務器響應兩個不同的html文件,具體取決於它是否是ajax請求。所以我將Vary頭添加到X-Requested-With。我期待Chrome能夠記錄兩個緩存條目,但似乎並非如此。我總是得到我提出的第一個請求的緩存命中。這是正常的行爲?Chrome是否支持HTTP Vary標頭

謝謝。

+2

你能告訴我們具體要求的例子嗎?您可以使用Chrome開發工具[導出網絡數據](https://developers.google.com/web/tools/chrome-devtools/network-performance/reference#export_requests_data)。 –

+0

你可以向我們展示兩個請求的請求/響應頭(帶和不帶'X-Request-With'頭)嗎? – idbehold

回答

1

備案。我一直無法在Chrome中使用X-Requested-With的HTTP Vary標頭。 Chrome在緩存時並未考慮HTTP Vary標頭。所以緩存命中總是返回相同的內容。

作爲解決方法,我只在使用ajax執行請求時添加了一個問題字符串(如?ajax = 1)。

例: http://localhost/myrequest.php http://localhost/myrequest.php?ajax=1

這樣的Chrome存儲二級緩存條目,一個使用Ajax和一個沒有。