HTTP ヘッダー の規約のうち、キャッシュに関するもののみを取り上げています。 これらの ヘッダー を正しく扱うことができれば…いろいろと幸せになれる ハズ !!
ここで取り上げているのは HTTP通信 時のヘッダーなので、 Ajax のような "動的コンテンツ" だろうと HTML や JavaScript といった "静的コンテンツ" だろうと共通する内容です。 HTTP通信 において基本となる内容です。
以下の表において、 リクエストに○があるものは、クライアントからサーバーへ "リクエスト" する時に利用します。 レスポンスに○があるものは、サーバーからクライアントへ "レスポンス" を返す時に利用します。
ヘッダー | リクエスト | レスポンス | 説明 |
---|---|---|---|
If-Modified-Since
|
○ | ― |
指定した日時よりサーバー側のデータが新しい場合、クライアントは最新データを受け取ります。 指定した日時がサーバー側の最新データと等しい場合、クライアントは |
If-None-Match
|
○ | ― |
指定した ETag と異なる場合、クライアントは該当するデータを受け取ります。 指定した ETag と同じ場合、クライアントは |
Expires
|
― | ○ |
クライアント側にキャッシュしておく有効期間を指定します。 |
Last-Modified
|
― | ○ |
サーバー側のデータが "いつ" のものであるかを指定します。 |
ETag
|
― | ○ |
サーバー側のデータから生成される ハッシュ文字列 等(更新状態も含めてデータを一意に特定できる文字列)を指定します。 |
Cache-Control
|
○ | ○ |
HTTP/1.1 で認識。 キャッシュ制御に関する指示。 指定できるプロパティは |
Pragma
|
○ | ○ |
HTTP/1.0 で認識。 |
今回、参考にしたサイトは以下の通りです。
最後に… このブログに興味を持っていただけた方は、 ぜひ 「Facebookページ に いいね!」または 「Twitter の フォロー」 お願いします!!