Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

En-tête Save-Data

Disponibilité limitée

Cette fonctionnalité n'est pas Compatible car elle ne fonctionne pas dans certains des navigateurs les plus utilisés.

Expérimental: Il s'agit d'une technologie expérimentale.
Vérifiez attentivement le tableau de compatibilité des navigateurs avant de l'utiliser en production.

L'en-tête de requête HTTP Save-Data est un indications du client réseau qui indique la préférence du client pour une utilisation réduite des données. Cela peut être pour des raisons telles que des coûts de transfert élevés, des vitesses de connexion lentes, etc.

Save-Data est un indications à faible entropie, et peut donc être envoyé par le client même s'il n'est pas demandé par le serveur utilisant un Accept-CH en-tête de réponse. De plus, il doit être utilisé pour réduire les données envoyées au client indépendamment des valeurs des autres indices de client qui indiquent la capacité du réseau, comme Downlink et RTT.

Une valeur de On indique que l'utilisateur·ice a explicitement choisi un mode de réduction de l'utilisation des données sur le client. Lorsqu'elle est communiquée aux origines, cela leur permet de fournir un contenu alternatif pour réduire les données téléchargées, comme des ressources d'image et de vidéo plus petites, un balisage et un style différents, le désactivation du sondage et des mises à jour automatiques, etc.

Note : La désactivation de HTTP/2 Server Push (RFC 7540, section 8.2: Server Push) peut réduire les téléchargements de données. Notez que cette fonctionnalité n'est plus prise en charge par défaut dans la plupart des principaux moteurs de navigateur.

Type d'en-tête En-tête de requête, Indication du client
En-tête de requête interdit Non
En-tête de réponse autorisé par CORS Non

Syntaxe

http
Save-Data: <sd-token>

Directives

<sd-token>

Une valeur indiquant si le client souhaite activer le mode de réduction de l'utilisation des données. on indique oui, tandis que off (la valeur par défaut) indique non.

Exemples

Utiliser Save-Data: on

Le message suivant demande une ressource avec l'en-tête Save-Data indiquant que le client choisit le mode de réduction de l'utilisation des données :

http
GET /image.jpg HTTP/1.1
Host: exemple.com
Save-Data: on

Le serveur répond avec une réponse 200, et l'en-tête Vary indique que Save-Data a peut-être été utilisé pour créer la réponse, et les caches doivent en tenir compte pour différencier les réponses :

http
HTTP/1.1 200 OK
Content-Length: 102832
Vary: Accept-Encoding, Save-Data
Cache-Control: public, max-age=31536000
Content-Type: image/jpeg

[…]

Omettre Save-Data

Dans ce cas, le client demande la même ressource sans l'en-tête Save-Data :

http
GET /image.jpg HTTP/1.1
Host: exemple.com

La réponse du serveur fournit la version complète du contenu. L'en-tête Vary garantit que les réponses doivent être mises en cache séparément en fonction de la valeur de l'en-tête Save-Data. Cela peut garantir que l'utilisateur·ice ne reçoit pas une image de qualité inférieure à partir du cache lorsque l'en-tête Save-Data n'est plus présent (par exemple, après être passé du réseau cellulaire au Wi-Fi).

http
HTTP/1.1 200 OK
Content-Length: 481770
Vary: Accept-Encoding, Save-Data
Cache-Control: public, max-age=31536000
Content-Type: image/jpeg

[…]

Spécifications

Spécification
Save Data API
# save-data-request-header-field

Compatibilité des navigateurs

Voir aussi