Согласование содержания
-
Основы согласования контента в HTTP
- Согласование контента позволяет предоставлять разные версии ресурса по одному URI.
- Классическим примером является предоставление разных форматов изображений для разных браузеров.
- Ресурс может быть доступен на разных языках и носителях, и выбор версии может быть автоматизирован или предоставлен пользователю.
-
Механизмы согласования контента
- HTTP предлагает несколько механизмов согласования контента, включая проактивное и реактивное управление, а также прозрачные и гибридные комбинации.
- Проактивное управление выполняется на сервере на основе критериев приемлемости от агента пользователя.
- Реактивное управление выполняется в пользовательском агенте на основе списка представлений и метаданных от сервера.
-
Примеры и рекомендации
- RFC 7231 описывает различные заголовки для согласования контента, включая Accept-Language и Accept-Charset.
- Существуют расширения, такие как Memento и согласование контента по профилю IETF/W3C, которые расширяют возможности согласования контента.
- RFC 7231 не описывает, как разрешать конфликты между противоречивыми требованиями в заголовках.
- Для получения дополнительной информации рекомендуется обратиться к соответствующим RFC и открытым источникам, таким как Apache и PHP.