print_body(ConnPid, MRef) ->
StreamRef = gun:get(ConnPid, "/"),
receive
{gun_response, ConnPid, StreamRef, fin, Status, Headers} ->
no_data;
{gun_response, ConnPid, StreamRef, nofin, Status, Headers} ->
receive_data(ConnPid, MRef, StreamRef);
{'DOWN', MRef, process, ConnPid, Reason} ->
error_logger:error_msg("Oops!"),
exit(Reason)
after 1000 ->
exit(timeout)
end.
receive_data(ConnPid, MRef, StreamRef) ->
receive
{gun_data, ConnPid, StreamRef, nofin, Data} ->
io:format("~s~n", [Data]),
receive_data(ConnPid, MRef, StreamRef);
{gun_data, ConnPid, StreamRef, fin, Data} ->
io:format("~s~n", [Data]);
{'DOWN', MRef, process, ConnPid, Reason} ->
error_logger:error_msg("Oops!"),
exit(Reason)
after 1000 ->
exit(timeout)
end.