Вопрос

В частности, в JAX-RS (я не уверен, что это актуально) есть методы, которые позволяют вам добавлять EntityTags к ответу.Что именно представляют собой теги сущностей и какими практическими способами они используются?

Это было полезно?

Решение

Теги сущностей - это способ включения кэширования в протокол HTTP.Когда сервер возвращает ответ, он может прикрепить ETagзаголовок, который выдает значение, представляющее состояние объекта, возвращаемого в ответ на запрос клиента.

Когда клиент делает последующие запросы с тем же ответом, он может отправить обратно ETag в своем запросе, используя If-None-Match заголовок и сервер могут использовать это, чтобы определить, нужно ли ему отправлять новый ответ (т.е.состояние запрошенного объекта изменилось) или может ли он ответить ответом 304 Not Modified, который инструктирует клиента использовать его локальную кэшированную копию.

Это чаще всего используется в RESTful API и приложениях, где важны кэширование и состояние объекта.

Видишь http://en.wikipedia.org/wiki/HTTP_ETag

Другие советы

В дополнение к ссылке на Джулиана:Как правило, теги сущностей позволяют клиенту, серверу и посредникам согласовать конкретное представление (следовательно сущность тег) ресурса.

Соглашение используется для сокращения использования сети (условный поиск) и контроля параллелизма (условные обновления).Первый работает примерно так: "Пришлите мне текущее представление этого ресурса, если это не то представление, которое у меня уже есть", а второй работает примерно так: "Примените это изменение к этому ресурсу, если он все еще находится в том состоянии, которое я ожидаю от него иметь").

Остальное подробно описано в спецификации HTTp.

Янв.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top