mirror of
https://github.com/ninenines/cowboy.git
synced 2025-07-15 12:40:25 +00:00
Allow atom responses in websocket handlers #563
This commit is contained in:
parent
3b4c0588e9
commit
01d30568dd
1 changed files with 8 additions and 10 deletions
|
@ -610,8 +610,8 @@ handler_call(State=#state{handler=Handler, handler_opts=HandlerOpts}, Req,
|
||||||
NextState(State#state{hibernate=true},
|
NextState(State#state{hibernate=true},
|
||||||
Req2, HandlerState2, RemainingData);
|
Req2, HandlerState2, RemainingData);
|
||||||
{reply, Payload, Req2, HandlerState2}
|
{reply, Payload, Req2, HandlerState2}
|
||||||
when is_tuple(Payload) ->
|
when is_list(Payload) ->
|
||||||
case websocket_send(Payload, State) of
|
case websocket_send_many(Payload, State) of
|
||||||
{ok, State2} ->
|
{ok, State2} ->
|
||||||
NextState(State2, Req2, HandlerState2, RemainingData);
|
NextState(State2, Req2, HandlerState2, RemainingData);
|
||||||
{shutdown, State2} ->
|
{shutdown, State2} ->
|
||||||
|
@ -621,8 +621,8 @@ handler_call(State=#state{handler=Handler, handler_opts=HandlerOpts}, Req,
|
||||||
handler_terminate(State2, Req2, HandlerState2, Error)
|
handler_terminate(State2, Req2, HandlerState2, Error)
|
||||||
end;
|
end;
|
||||||
{reply, Payload, Req2, HandlerState2, hibernate}
|
{reply, Payload, Req2, HandlerState2, hibernate}
|
||||||
when is_tuple(Payload) ->
|
when is_list(Payload) ->
|
||||||
case websocket_send(Payload, State) of
|
case websocket_send_many(Payload, State) of
|
||||||
{ok, State2} ->
|
{ok, State2} ->
|
||||||
NextState(State2#state{hibernate=true},
|
NextState(State2#state{hibernate=true},
|
||||||
Req2, HandlerState2, RemainingData);
|
Req2, HandlerState2, RemainingData);
|
||||||
|
@ -632,9 +632,8 @@ handler_call(State=#state{handler=Handler, handler_opts=HandlerOpts}, Req,
|
||||||
{{error, _} = Error, State2} ->
|
{{error, _} = Error, State2} ->
|
||||||
handler_terminate(State2, Req2, HandlerState2, Error)
|
handler_terminate(State2, Req2, HandlerState2, Error)
|
||||||
end;
|
end;
|
||||||
{reply, Payload, Req2, HandlerState2}
|
{reply, Payload, Req2, HandlerState2} ->
|
||||||
when is_list(Payload) ->
|
case websocket_send(Payload, State) of
|
||||||
case websocket_send_many(Payload, State) of
|
|
||||||
{ok, State2} ->
|
{ok, State2} ->
|
||||||
NextState(State2, Req2, HandlerState2, RemainingData);
|
NextState(State2, Req2, HandlerState2, RemainingData);
|
||||||
{shutdown, State2} ->
|
{shutdown, State2} ->
|
||||||
|
@ -643,9 +642,8 @@ handler_call(State=#state{handler=Handler, handler_opts=HandlerOpts}, Req,
|
||||||
{{error, _} = Error, State2} ->
|
{{error, _} = Error, State2} ->
|
||||||
handler_terminate(State2, Req2, HandlerState2, Error)
|
handler_terminate(State2, Req2, HandlerState2, Error)
|
||||||
end;
|
end;
|
||||||
{reply, Payload, Req2, HandlerState2, hibernate}
|
{reply, Payload, Req2, HandlerState2, hibernate} ->
|
||||||
when is_list(Payload) ->
|
case websocket_send(Payload, State) of
|
||||||
case websocket_send_many(Payload, State) of
|
|
||||||
{ok, State2} ->
|
{ok, State2} ->
|
||||||
NextState(State2#state{hibernate=true},
|
NextState(State2#state{hibernate=true},
|
||||||
Req2, HandlerState2, RemainingData);
|
Req2, HandlerState2, RemainingData);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue