次のようなエンドポイントを介して検出可能なリソースを持つ RESTful サービスがあるとします。
リクエスト:
GET http://acme.org/someInfo
応答:
HTTP/1.1 200 OK
Content-Length: ...
Content-Type: application/vnd.acme+xml
Date: Fri, 16 Dec 2012 12:40:00 GMT
Last-Modified: Tue, 1 Mar 2012 11:45:00 GMT
<someInfo xmlns="http://schemas.acme.org/someInfo" xmlns:dap="http://schemas.acme.org/dap">
<dap:link rel="http://relations.acme.org/someInfo" uri="htp://acme.org/someInfo/foo" />
<dap:link rel="http://relations.acme.org/someInfo" uri="htp://acme.org/someInfo/bar" />
<dap:link rel="http://relations.acme.org/someInfo" uri="htp://acme.org/someInfo/baz" />
</someInfo>
そして、この応答で、クライアントはハイパーメディア リンクの 1 つをたどることができます。
リクエスト:
GET http://acme.org/someInfo/foo
応答:
HTTP/1.1 200 OK
Content-Length: ...
Content-Type: application/vnd.acme+xml
Date: Fri, 16 Dec 2012 12:45:00 GMT
Last-Modified: Wed, 28 Sep 2012 11:45:00 GMT
<fooInfo xmlns="http://schemas.acme.org/fooInfo">
...
</fooInfo>
最初の回答はあまり頻繁に変更されず (例: 何ヶ月も)、2 番目の回答は少し頻繁に変更される場合があります (例: 毎月程度)。この種のシナリオに適した HTTP キャッシュ戦略は何ですか。日付別、クライアント ETag 比較、その他の何か?
編集: データが 1 日程度古い場合は問題ありません。それ以上はおそらく問題になるでしょう。