diff options
author | Loïc Hoguin <[email protected]> | 2017-03-27 10:26:13 +0200 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2017-03-27 10:26:13 +0200 |
commit | 10dfd8c910bce3ae71146f8f13eef25b34ec093a (patch) | |
tree | e491e7602e69c5eb82dc7ea5b25c269f0c4cd4d2 /src/cowboy_compress_h.erl | |
parent | 14a01f71cb495ef6be5e31122857d1e4438cecfe (diff) | |
download | cowboy-10dfd8c910bce3ae71146f8f13eef25b34ec093a.tar.gz cowboy-10dfd8c910bce3ae71146f8f13eef25b34ec093a.tar.bz2 cowboy-10dfd8c910bce3ae71146f8f13eef25b34ec093a.zip |
Add the early_error cowboy_stream callback
This callback is called when an error occurs before the request
(including headers, excluding body) was fully received. The
init/3 callback will not be called. The callback receives the
partial Req object (possibly empty), the reason for the error
and the response command that the server will send. It allows
you to be aware of the error and possibly modify the response
before it is sent.
Diffstat (limited to 'src/cowboy_compress_h.erl')
-rw-r--r-- | src/cowboy_compress_h.erl | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/cowboy_compress_h.erl b/src/cowboy_compress_h.erl index 229e75f..9c2ae34 100644 --- a/src/cowboy_compress_h.erl +++ b/src/cowboy_compress_h.erl @@ -19,6 +19,7 @@ -export([data/4]). -export([info/3]). -export([terminate/3]). +-export([early_error/5]). -record(state, { next :: any(), @@ -55,6 +56,12 @@ terminate(StreamID, Reason, #state{next=Next, deflate=Z}) -> end, cowboy_stream:terminate(StreamID, Reason, Next). +-spec early_error(cowboy_stream:streamid(), cowboy_stream:reason(), + cowboy_stream:partial_req(), Resp, cowboy:opts()) -> Resp + when Resp::cowboy_stream:resp_command(). +early_error(StreamID, Reason, PartialReq, Resp, Opts) -> + cowboy_stream:early_error(StreamID, Reason, PartialReq, Resp, Opts). + %% Internal. %% Check if the client supports decoding of gzip responses. |