Сохранение данных
Сохранение данных
Экспериментальная технология: Это экспериментальная технология
Перед использованием в рабочей среде внимательно ознакомьтесь со таблицей совместимости с браузерами.
Поле заголовка запроса Save-Data подсказки о сети представляет собой булево значение, которое указывает на предпочтение клиента в отношении уменьшения использования данных. Это может быть связано с высокими затратами на передачу, низкой скоростью подключения и т. д.
Save-Data является подсказкой низкой энтропии и, следовательно, может отправляться клиентом, даже если сервер не запросил ее с помощью заголовка ответа Accept-CH. Кроме того, она должна использоваться для уменьшения объема данных, отправляемых клиенту, независимо от значений других подсказок клиента, указывающих на возможности сети, таких как Downlink и RTT.
| Тип заголовка | Заголовок запроса, Подсказка клиента |
|---|---|
| Запрещенное имя заголовка | нет |
| Безопасный заголовок ответа CORS | нет |
Значение On указывает на явное согласие пользователя на режим уменьшения использования данных на клиенте, а при передаче источнику позволяет ему предоставлять альтернативный контент для уменьшения загружаемых данных, например, меньшие изображения и видео, различную разметку и стили, отключение опроса и автоматических обновлений и т. д.
Примечание: Также может быть желательно отключить HTTP/2 Server Push (RFC 7540, раздел 8.2: Server Push), чтобы уменьшить загрузку данных.
Синтаксис
Save-Data: <sd-token>
Директивы
<sd-token>-
Значение, указывающее, хочет ли клиент включить режим уменьшения использования данных.
onуказывает «да», аoff(значение по умолчанию) — «нет».
Примеры
Заголовок Vary гарантирует правильное кэширование контента (например, гарантирует, что пользователю не будет предоставлено изображение более низкого качества из кэша, когда заголовок Save-Data больше не присутствует [например, после переключения с сотовой связи на Wi-Fi]).
С Save-Data: on
Запрос:
GET /image.jpg HTTP/1.0 Host: example.com Save-Data: on
Ответ:
HTTP/1.0 200 OK Content-Length: 102832 Vary: Accept-Encoding, Save-Data Cache-Control: public, max-age=31536000 Content-Type: image/jpeg […]
Без Save-Data
Запрос:
GET /image.jpg HTTP/1.0 Host: example.com
Ответ:
HTTP/1.0 200 OK Content-Length: 481770 Vary: Accept-Encoding, Save-Data Cache-Control: public, max-age=31536000 Content-Type: image/jpeg […]
Спецификации
| Спецификация |
|---|
| Save Data API # save-data-request-header-field |
Совместимость с браузерами
| Десктопные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | |
Save-Data |
49 |
≤79 |
Нет |
Нет |
35 |
Нет |
49 |
49 |
Нет |
35 |
Нет |
5.0 |
См. также
- Помощь пользователям в экономии данных - CSS Tricks
- Предоставление быстрых и легких приложений с Save-Data - web.dev
-
Varyзаголовок, указывающий на то, что отображаемый контент изменяется в зависимости от значенияSave-Data(см. HTTP кэширование > Различающиеся ответы) - Функция CSS @media
prefers-reduced-dataЭкспериментальная - Улучшение конфиденциальности пользователей и опыта разработчиков с помощью подсказок User-Agent Client Hints (web.dev)
NetworkInformation.saveData
© 2005–2022 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Save-Data