Early-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-Early-Data-Anforderungsheader wird von einem Vermittler gesetzt, um anzuzeigen, dass die Anfrage in TLS early data übermittelt wurde, und gibt auch an, dass der Vermittler den 425 Too Early-Statuscode versteht.
Wenn ein Client kürzlich mit einem Server interagiert hat, ermöglicht frühe Daten (auch bekannt als Zero-Round-Trip-Zeit-(0-RTT)-Daten) dem Client, Daten an einen Server in der ersten Round-Trip-Verbindung zu senden, ohne auf den Abschluss des TLS-Handshakes zu warten. Dies reduziert die Latenz bei wiederholten Verbindungen zwischen einem Client und Server, hat jedoch Sicherheitsimplikationen, da frühe Daten anfällig für Replay-Angriffe sind.
Der Early-Data-Header wird nicht vom Urheber der Anfrage gesetzt (d.h. einem Browser).
| Header-Typ | Anforderungsheader |
|---|---|
| Verbotener Anforderungsheader | Nein |
Syntax
Early-Data: 1
Beispiele
>Eine GET-Anfrage mit einem Early-Data-Header
Ein Client, der frühe Daten verwenden möchte, kann HTTP-Anfragen sofort nach dem Senden des TLS ClientHello senden.
Das Senden einer Anfrage in frühen Daten impliziert, dass der Client bereit ist, eine Anfrage als Antwort auf einen 425 Too Early-Statuscode zu wiederholen, daher wird der Early-Data-Header nicht eingeschlossen:
GET /resource HTTP/1.1
Host: example.com
Ein Vermittler, der eine Anfrage vor dem Abschluss des TLS-Handshakes mit seinem Client weiterleitet, sendet sie mit dem auf 1 gesetzten Early-Data-Header:
GET /resource HTTP/1.1
Host: example.com
Early-Data: 1
Spezifikationen
| Specification |
|---|
| Using Early Data in HTTP> # header> |