TE header
The HTTP TE {{Glossary("request header")}}header specifies the transfer encodings the user agent is willing to accept.
The transfer encodings are for message compression and chunking of data during transmission.
Transfer encodings are applied at the protocol layer, so an application consuming responses receives the body as if no encoding was applied.
[!NOTE]NOTE: In HTTP/2 and HTTP/3, theTEheader field is only accepted if thetrailersvalue is set.
| Header type | |
|---|---|
| Yes |
Syntax
TE: compress
TE: deflate
TE: gzip
TE: trailers
Multiple directives in a comma-separated list with {{glossary("quality values")}}values as weights:
TE: trailers, deflate;q=0.5
Directives
compress- : A format using the Lempel-Ziv-Welch (LZW) algorithm is accepted as a transfer coding name.
deflate- : Using the zlib structure is accepted as a transfer coding name.
gzip- : A format using the Lempel-Ziv coding (LZ77), with a 32-bit CRC is accepted as a transfer coding name.
trailers- : Indicates that the client will not discard trailer fields in a chunked transfer coding.
q- : When multiple transfer codings are acceptable, the
qparameter ({{glossary("qualityvalues")}}values) syntax orders codings by preference.
- : When multiple transfer codings are acceptable, the
Note that chunked is always supported by HTTP/1.1 recipients, so you don't need to specify it using the TE header.
See the {{HTTPHeader("Transfer-Encoding")}}Encoding header for more details.
Examples
Using the TE header with quality values
In the following request, the client indicates a preference for gzip-encoded responses with deflate as a second preference using a q value:
GET /resource HTTP/1.1
Host: example.com
TE: gzip; q=1.0, deflate; q=0.8
Specifications
{{Specifications}}
Browser compatibility
{{Compat}}
See also
{{HTTPHeader("Transfer-Encoding")}}Encoding{{HTTPHeader("Content-Encoding")}}Encoding{{HTTPHeader("Trailer")}}Trailer- Chunked transfer encoding