diff options
author | Loïc Hoguin <[email protected]> | 2024-01-04 15:15:41 +0100 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2024-01-04 15:50:12 +0100 |
commit | fd9711d9495e4ddcd41eda7a284dfc7f37c11f15 (patch) | |
tree | 887d4f6569b7bf06ee584ad50b2fe9647b7394c6 /doc/src/guide/streams.asciidoc | |
parent | 3ed1b24dd6ef6cd3e78a2fa6d600cce082b6984a (diff) | |
download | cowboy-fd9711d9495e4ddcd41eda7a284dfc7f37c11f15.tar.gz cowboy-fd9711d9495e4ddcd41eda7a284dfc7f37c11f15.tar.bz2 cowboy-fd9711d9495e4ddcd41eda7a284dfc7f37c11f15.zip |
Rework and improve the decompress stream handler
The read buffer was changed into an iovec to avoid doing
too many binary concatenations and allocations.
Decompression happens transparently: when decoding gzip,
the content-encoding header is removed (we only decode
when "gzip" is the only encoding so nothing remains).
We always add a content_decoded key to the Req object.
This key contains a list of codings that were decoded,
in the reverse order in which they were. Currently it
can only be empty or contain <<"gzip">> but future
improvements or user handlers may see it contain more
values.
The option to disable decompression was renamed to
decompress_enabled and defaults to true.
It is no longer possible to enable/disable decompression
in the middle of reading the body: this ensures that the
data we pass forward is always valid.
Various smaller improvements were made to the code,
tests and manual pages.
Diffstat (limited to 'doc/src/guide/streams.asciidoc')
-rw-r--r-- | doc/src/guide/streams.asciidoc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/doc/src/guide/streams.asciidoc b/doc/src/guide/streams.asciidoc index b6e4d34..e8ddae0 100644 --- a/doc/src/guide/streams.asciidoc +++ b/doc/src/guide/streams.asciidoc @@ -66,9 +66,9 @@ enabled by default. It is a good example for writing your own handlers that will modify responses. link:man:cowboy_decompress_h(3)[cowboy_decompress_h] will -automatically decompress requests when possible. It is not -enabled by default. It is a good example for writing your -own handlers that will modify requests. +automatically decompress request bodies when possible. +It is not enabled by default. It is a good example for +writing your own handlers that will modify requests. link:man:cowboy_metrics_h(3)[cowboy_metrics_h] gathers metrics about a stream then passes them to a configurable |