diff options
author | Loïc Hoguin <[email protected]> | 2017-12-11 12:45:53 +0100 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2017-12-11 12:45:53 +0100 |
commit | 73f7713f7138b8e3a80122e6b7d446e8ef3bbb39 (patch) | |
tree | 56047f5b62eb092d6ea158414339c4b21d096ffe /docs/en/cowboy/2.2/guide/resp.asciidoc | |
parent | bc12c6542bd5cb11e33679e7d6350b185954f691 (diff) | |
download | ninenines.eu-73f7713f7138b8e3a80122e6b7d446e8ef3bbb39.tar.gz ninenines.eu-73f7713f7138b8e3a80122e6b7d446e8ef3bbb39.tar.bz2 ninenines.eu-73f7713f7138b8e3a80122e6b7d446e8ef3bbb39.zip |
Update documentation
Diffstat (limited to 'docs/en/cowboy/2.2/guide/resp.asciidoc')
-rw-r--r-- | docs/en/cowboy/2.2/guide/resp.asciidoc | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/docs/en/cowboy/2.2/guide/resp.asciidoc b/docs/en/cowboy/2.2/guide/resp.asciidoc index 6d4967e0..781157d6 100644 --- a/docs/en/cowboy/2.2/guide/resp.asciidoc +++ b/docs/en/cowboy/2.2/guide/resp.asciidoc @@ -128,7 +128,35 @@ in advance. This will ensure that the best response method is selected and help clients understand when the response is fully received. -// @todo Document trailers here. +Cowboy also provides a function to send response trailers. +Response trailers are semantically equivalent to the headers +you send in the response, only they are sent at the end. +This is especially useful to attach information to the +response that could not be generated until the response +body was fully generated. + +Trailer fields must be listed in the trailer header. Any +field not listed might be dropped by the client or an intermediary. + +[source,erlang] +---- +Req = cowboy_req:stream_reply(200, #{ + <<"content-type">> => <<"text/html">>, + <<"trailer">> => <<"expires, content-md5">> +}, Req0), + +cowboy_req:stream_body("<html><head>Hello world!</head>", nofin, Req), +cowboy_req:stream_body("<body><p>Hats off!</p></body></html>", nofin, Req), + +cowboy_req:stream_trailers(#{ + <<"expires">> => <<"Sun, 10 Dec 2017 19:13:47 GMT">>, + <<"content-md5">> => <<"c6081d20ff41a42ce17048ed1c0345e2">> +}, Req). +---- + +The stream ends with trailers. It is no longer possible to +send data after sending trailers. You cannot send trailers +after setting the `fin` flag when streaming the body. === Preset response headers |