Use-As-Dictionary header
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser support for this feature? Tell us why.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Der HTTP-Header Use-As-Dictionary listet die Übereinstimmungskriterien auf, nach denen das Compression Dictionary Transport-Wörterbuch für zukünftige Anfragen verwendet werden kann.
Weitere Informationen finden Sie im Leitfaden für Compression Dictionary Transport.
Syntax
Use-As-Dictionary: match="<url-pattern>"
Use-As-Dictionary: match-dest=("<destination1>" "<destination2>", …)
Use-As-Dictionary: id="<string-identifier>"
Use-As-Dictionary: type="raw"
// Multiple, in any order
Content-Encoding: match="<url-pattern>", match-dest=("<destination1>")
Direktiven
match-
Ein Zeichenfolgenwert, der ein URL-Muster enthält: Nur Ressourcen, deren URLs mit diesem Muster übereinstimmen, dürfen diese Ressource als Wörterbuch verwenden. Reguläre Ausdrucksgruppierungen sind nicht erlaubt, daher muss
URLPattern.hasRegExpGroupsfalsesein. match-dest-
Eine durch Leerzeichen getrennte Liste von Zeichenfolgen, wobei jede Zeichenfolge in Anführungszeichen und der gesamte Wert in Klammern eingeschlossen ist, die eine Liste von Fetch-Request-Zielen bereitstellen, die Anfragen entsprechen müssen, wenn sie dieses Wörterbuch verwenden sollen.
id-
Ein Zeichenfolgenwert, der einen Server-Identifikator für das Wörterbuch angibt. Dieser ID-Wert wird dann im
Dictionary-ID-Request-Header hinzugefügt, wenn der Browser eine Ressource anfordert, die dieses Wörterbuch verwenden kann. type-
Ein Zeichenfolgenwert, der das Dateiformat des bereitgestellten Wörterbuchs beschreibt. Derzeit wird nur
rawunterstützt (was der Standard ist), daher ist dies mehr für zukünftige Kompatibilität.
Beispiele
>Pfadvorsilbe
Use-As-Dictionary: match="/product/*"
Dies besagt, dass das Wörterbuch nur für URLs verwendet werden soll, die mit /product/ beginnen.
Versionierte Verzeichnisse
Use-As-Dictionary: match="/app/*/main.js"
Dieser verwendet einen Platzhalter, um mehrere Versionen einer Datei abzugleichen.
Ziele
Use-As-Dictionary: match="/product/*", match-dest=("document")
Hier wird match-dest verwendet, um sicherzustellen, dass das Wörterbuch nur für document-Anfragen verwendet wird, sodass <script src="/product/js/app.js"> Ressourcenanforderungen zum Beispiel nicht übereinstimmen würden.
Use-As-Dictionary: match="/product/*", match-dest=("document" "frame")
Dies würde es ermöglichen, dass das Wörterbuch sowohl mit obersten Dokumenten als auch mit iframes übereinstimmt.
ID
Use-As-Dictionary: match="/product/*", id="dictionary-12345"
Wenn Use-As-Dictionary eine id-Direktive enthält, wie in diesem Beispiel, wird der id-Wert im Dictionary-ID-Request-Header für Ressourcen enthalten sein, die dieses Wörterbuch verwenden können. Die Ressourcenanforderung wird auch den SHA-256-Hash des Wörterbuchs, umgeben von Doppelpunkten, im Available-Dictionary-Header enthalten:
Accept-Encoding: gzip, br, zstd, dcb, dcz
Available-Dictionary: :pZGm1Av0IEBKARczz7exkNYsZb8LzaMrV7J32a2fFG4=:
Dictionary-ID: "dictionary-12345"
Der Server muss den Hash aus dem Available-Dictionary-Header immer noch überprüfen — die Dictionary-ID ist zusätzliche Information für den Server zur Identifizierung des Wörterbuchs, ersetzt aber nicht die Notwendigkeit für den Available-Dictionary-Header.
Typ
Use-As-Dictionary: match="/product/*", type="raw"
Derzeit wird nur raw unterstützt (was der Standard ist), daher ist dies mehr für zukünftige Kompatibilität.
Spezifikationen
| Spezifikation |
|---|
| Compression Dictionary Transport> # use-as-dictionary> |