次の形式は、AJAXリクエストを検出し、有効期限を15分間に設定して、同じGETがネットワークトラフィックを必要としないようにするための良い形式ですか?
# in controller
if request.xhr?
response.headers['Expires'] = (Time.now + 15.minutes).httpdate
response.headers['Cache-Control'] = '' # override any no-cache, must-revalidate
end
更新: 私はより短い代替案を見つけました、それはexpires_in
# in controller
if request.xhr?
expires_in(15.minutes)
end
ただし、その後、ヘッダーは次のようになります。
Cache-Control: max-age=900, private
かつては
Expires: Tue, 13 Jul 2010 00:59:47 GMT
以前のバージョンだったとき。ただし、これCache-Control
はHTTP / 1.1用であり、数年前でも、高性能Webサイトの本で言及されているように、99%のブラウザーでサポートされていたことに注意してください。