🐘
【Rails】fresh_when について簡単に解説する
概要
以前の記事で stale?
メソッドについて解説しました。
今回はその中で使われている fresh_when
メソッドについて簡単に解説します。
fresh_when とは
fresh_when
メソッドは引数で受け取った etag
や last_modified
からレスポンスを作成し、
そのレスポンスとリクエストを比較して、リクエストが最新(fresh
)であれば head :not_modified
で304のステータスコードとレスポンスヘッダーを返すようにしています。
stale?
は上記の fresh_when
でステータスコードとレスポンスヘッダーを作成したうえで、
リクエストが最新かどうかを判定して返しています。
まとめるとこんな感じになります。
レスポンスヘッダの作成 | 戻り値 | |
---|---|---|
stale? | する | true/false |
fresh_when | する | なし |
Discussion