init(StreamID, Req, Opts) -> {Commands, State} StreamID :: cowboy_stream:stream_id() Req :: cowboy_req:req() Opts :: cowboy:opts() Commands :: cowboy_stream:commands() State - opaque
cowboy_stream:init - Initialize a stream
init(StreamID, Req, Opts) -> {Commands, State} StreamID :: cowboy_stream:stream_id() Req :: cowboy_req:req() Opts :: cowboy:opts() Commands :: cowboy_stream:commands() State - opaque
Initialize a stream.
This function must be called by all stream handlers. It will initialize the next configured stream handler.
The stream ID.
The Req object.
The protocol options.
The commands to be executed.
The state for the next stream handler.
A list of commands and an opaque state is returned.
The list of commands returned should be included in the commands returned from the current stream handler. It can be modified if necessary.
The state should be stored in the current stream handler's state and passed to cowboy_stream
when necessary. The state should be treated as opaque.
init(StreamID, Req, Opts) -> MyCommands = my_commands(), {Commands, Next} = cowboy_stream:init(StreamID, Req, Opts), {MyCommands ++ Commands, #state{next=Next}}.
cowboy_stream(3), cowboy_stream:data(3), cowboy_stream:info(3), cowboy_stream:terminate(3), cowboy_stream:early_error(3)
Donate to Loïc Hoguin because his work on Cowboy, Ranch, Gun and Erlang.mk is fantastic:
Recurring payment options are also available via GitHub Sponsors. These funds are used to cover the recurring expenses like food, dedicated servers or domain names.