0

次の形式は、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%のブラウザーでサポートされていたことに注意してください。

4

1 に答える 1

0

まだ答えがないので、上記のアップデートで使用します。

if request.xhr?
  expires_in(15.minutes)
end

私はそれを試しました、そしてそれはうまくいきます。

于 2010-07-15T07:39:25.620 に答える