If-Modified-Since
次のようなヘッダーでリクエストを送信します。
WinJS.xhr({
url: "http://www.microsoft.com",
headers: {
"If-Modified-Since": "Mon, 27 Mar 1972 00:00:00 GMT"
} })
.done(function complete(result) {
// Report download.
xhrDiv.innerText = "Downloaded the page";
xhrDiv.style.backgroundColor = "#00FF00";
});
ページ外へのリンク。If-Modified-Since
追加のヘッダーはhereにあります。重要なのはCACHE-CONTROL
ヘッダーです。ここからの追加のキャッシュ ディレクティブは次のとおりです。
Cache-Control = "Cache-Control" ":" 1#cache-directive
cache-directive = cache-request-directive
| cache-response-directive
cache-request-directive =
"no-cache" ; Section 14.9.1
| "no-store" ; Section 14.9.2
| "max-age" "=" delta-seconds ; Section 14.9.3, 14.9.4
| "max-stale" [ "=" delta-seconds ] ; Section 14.9.3
| "min-fresh" "=" delta-seconds ; Section 14.9.3
| "no-transform" ; Section 14.9.5
| "only-if-cached" ; Section 14.9.4
| cache-extension ; Section 14.9.6
cache-response-directive =
"public" ; Section 14.9.1
| "private" [ "=" <"> 1#field-name <"> ] ; Section 14.9.1
| "no-cache" [ "=" <"> 1#field-name <"> ]; Section 14.9.1
| "no-store" ; Section 14.9.2
| "no-transform" ; Section 14.9.5
| "must-revalidate" ; Section 14.9.4
| "proxy-revalidate" ; Section 14.9.4
| "max-age" "=" delta-seconds ; Section 14.9.3
| "s-maxage" "=" delta-seconds ; Section 14.9.3
| cache-extension ; Section 14.9.6
ここから:
場合によっては、ユーザー エージェントは、キャッシュがそのキャッシュ エントリをオリジン サーバー (オリジン サーバーへのパスに沿った次のキャッシュだけでなく) で再検証すること、またはオリジン サーバーからキャッシュ エントリをリロードすることを望む、または主張する必要がある場合があります。キャッシュまたはオリジンサーバーのいずれかがキャッシュされた応答の有効期限を過大評価した場合、エンドツーエンドの再検証が必要になることがあります。何らかの理由でキャッシュ エントリが破損した場合は、エンド ツー エンドのリロードが必要になることがあります。
と
特定のエンドツーエンドの再検証
要求には、「max-age=0」キャッシュ制御ディレクティブが含まれています。これは、オリジン サーバーへのパスに沿った各キャッシュに、次のキャッシュまたはサーバーで独自のエントリがある場合は再検証を強制します。最初のリクエストには、クライアントの現在のバリデータによるキャッシュ検証条件が含まれます。