Save-Data
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 Client-Hinweis für Netzwerke, der die Präferenz des Clients für eine reduzierte Datennutzung anzeigt.
Dies könnte aus Gründen wie hohen Übertragungskosten, langsamen Verbindungsgeschwindigkeiten usw. sein.
Save-Data
ist ein Hinweis mit geringer Entropie und kann daher vom Client gesendet werden, auch wenn er nicht vom Server über einen Accept-CH
-Antwort-Header angefordert wird.
Darüber hinaus sollte er verwendet werden, um die an den Client gesendeten Daten zu reduzieren, unabhängig von den Werten anderer Client-Hinweise, die die Netzwerkfähigkeit anzeigen, wie Downlink
und RTT
.
Ein Wert von On
zeigt an, dass der Benutzer explizit in einen Modus mit reduzierter Datennutzung auf dem Client eingewilligt hat.
Wenn dies an Ursprünge kommuniziert wird, ermöglicht es diesen, alternative Inhalte bereitzustellen, um die heruntergeladenen Daten zu reduzieren, wie z.B. kleinere Bild- und Videoressourcen, unterschiedliches Markup und Styling, deaktivierte Abfragen und automatische Updates usw.
Hinweis: Das Deaktivieren von HTTP/2 Server Push (RFC 7540, Abschnitt 8.2: Server Push) kann die Datendownloads 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 Request-Header | Nein |
CORS-safelisted-response-Header | Nein |
Syntax
Save-Data: <sd-token>
Direktiven
<sd-token>
-
Ein Wert, der angibt, ob der Client in den Modus für reduzierte Datennutzung einwilligen möchte.
on
zeigt Ja an, währendoff
(der Standard) Nein anzeigt.
Beispiele
Nutzung von Save-Data: on
Die folgende Nachricht fordert eine Ressource mit dem Save-Data
-Header an, der anzeigt, dass der Client sich für den reduzierten Datenmodus entscheidet:
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
möglicherweise verwendet wurde, um die Antwort zu erstellen. Caches sollten sich dieses Headers bewusst sein, um zwischen Antworten zu unterscheiden:
HTTP/1.1 200 OK
Content-Length: 102832
Vary: Accept-Encoding, Save-Data
Cache-Control: public, max-age=31536000
Content-Type: image/jpeg
[…]
Auslassen 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 zwischengespeichert werden sollten.
Dies kann sicherstellen, dass dem Benutzer kein Bild niedrigerer Qualität aus dem Cache bereitgestellt wird, wenn der Save-Data
-Header nicht mehr vorhanden ist (z.B. nach dem 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
BCD tables only load in the browser
Siehe auch
- CSS
@media
-Featureprefers-reduced-data
Experimentell Vary
-Header, der anzeigt, dass der bereitgestellte Inhalt je nach Wert vonSave-Data
variiert (siehe HTTP Caching: Vary)NetworkInformation.saveData
- Helfen Sie Ihren Benutzern, Daten zu sparen auf css-tricks.com
- Bereitstellung schneller und leichter Anwendungen mit Save-Data - web.dev auf web.dev
- Verbesserung des Benutzerdatenschutzes und der Entwicklererfahrung mit User-Agent Client Hints (developer.chrome.com)