Если у меня есть служба 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>
И затем с помощью этого ответа клиент может затем перейти по одной из гиперссылок:
Запрос:
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>
Первый ответ может меняться реже (например, много месяцев), а второй - немного чаще (например, каждый месяц или около того). Что такое хорошая стратегия HTTP-кэширования для такого сценария; по дате, клиент ETag сравнения, что-то еще?
РЕДАКТИРОВАТЬ: если данные устарели в день или около того, это нормально. Больше, вероятно, будет проблематично.