Save-Data header
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Der HTTP Save-Data
Request-Header ist ein Netzwerk-Client-Hinweis, der die Präferenz des Clients für eine reduzierte Datennutzung angibt.
Dies kann aus Gründen wie hohen Übertragungskosten oder langsamen Verbindungsgeschwindigkeiten geschehen.
Save-Data
ist ein Low-Entropy-Hinweis und kann daher vom Client gesendet werden, auch wenn er nicht vom Server mit einem Accept-CH
Response-Header angefordert wird.
Darüber hinaus sollte er verwendet werden, um die zum Client gesendeten Daten zusätzlich zu den Werten anderer Client-Hinweise, die die Netzwerkfähigkeit anzeigen, wie Downlink
und RTT
zu reduzieren.
Ein Wert von On
zeigt an, dass der Benutzer ausdrücklich in den reduzierten Datennutzungsmodus auf dem Client eingewilligt hat.
Wenn dies an die Ursprünge kommuniziert wird, ermöglicht es ihnen, Alternativinhalte zu liefern, um die heruntergeladenen Daten zu reduzieren, z. B. kleinere Bild- und Videodateien, anderes Markup und Styling, deaktiviertes Polling und automatische Updates usw.
Hinweis: Das Deaktivieren von HTTP/2 Server Push (RFC 7540, Abschnitt 8.2: Server Push) kann den Daten-Download reduzieren. Beachten Sie, dass dieses Feature in den meisten großen Browser-Engines standardmäßig nicht mehr unterstützt wird.
Header-Typ | Request-Header, Client-Hinweis |
---|---|
Verbotener Anfrage-Header | Nein |
CORS-safelisted Antwort-Header | Nein |
Syntax
Save-Data: <sd-token>
Direktiven
<sd-token>
-
Ein Wert, der angibt, ob der Client in den reduzierten Datennutzungsmodus einwilligen möchte.
on
bedeutet ja, währendoff
(der Standard) nein bedeutet.
Beispiele
Verwendung von Save-Data: on
Die folgende Nachricht fordert eine Ressource mit dem Save-Data
Header an, was anzeigt, dass der Client in den reduzierten Datenmodus einwilligt:
GET /image.jpg HTTP/1.1
Host: example.com
Save-Data: on
Der Server antwortet mit einer 200
-Antwort und der Vary
Header zeigt an, dass Save-Data
verwendet worden sein könnte, um die Antwort zu erstellen, und Caches sollten sich dieses Headers bewusst sein, um Antworten zu differenzieren:
HTTP/1.1 200 OK
Content-Length: 102832
Vary: Accept-Encoding, Save-Data
Cache-Control: public, max-age=31536000
Content-Type: image/jpeg
[…]
Weglassen von Save-Data
In diesem Fall fordert der Client die gleiche Ressource ohne den Save-Data
Header an:
GET /image.jpg HTTP/1.1
Host: example.com
Die Antwort des Servers liefert die vollständige Version des Inhalts.
Der Vary
Header stellt sicher, dass Antworten basierend auf dem Wert des Save-Data
Headers separat gecacht werden sollten.
Dies kann sicherstellen, dass dem Benutzer kein Bild geringerer Qualität aus dem Cache serviert wird, wenn der Save-Data
Header nicht mehr vorhanden ist (z.B. nach einem Wechsel von Mobilfunk zu WLAN).
HTTP/1.1 200 OK
Content-Length: 481770
Vary: Accept-Encoding, Save-Data
Cache-Control: public, max-age=31536000
Content-Type: image/jpeg
[…]
Spezifikationen
Specification |
---|
Save Data API # save-data-request-header-field |
Browser-Kompatibilität
Siehe auch
- CSS
@media
Featureprefers-reduced-data
Experimentell Vary
Header, der anzeigt, dass der Inhalt abhängig vom Wert desSave-Data
variieren kann (siehe HTTP-Caching: Vary)NetworkInformation.saveData
- Helfen Sie Ihren Nutzern,
Save-Data
auf css-tricks.com - Effiziente und schnelle Anwendungen mit Save-Data bereitstellen - web.dev auf web.dev
- Verbesserung der Benutzer-Privatsphäre und der Entwicklererfahrung mit User-Agent-Client-Hinweisen (developer.chrome.com)