aboutsummaryrefslogtreecommitdiffstats
path: root/examples/chunked_hello_world/src/toppage_handler.erl
blob: 906f292e28100943cf3cf8ced4a21a333534610f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
%% Feel free to use, reuse and abuse the code in this file.

%% @doc Chunked hello world handler.
-module(toppage_handler).

-export([init/3]).
-export([handle/2]).
-export([terminate/2]).

init(_Transport, Req, []) ->
	{ok, Req, undefined}.

handle(Req, State) ->
	{ok, Req2} = cowboy_http_req:chunked_reply(200, Req),
	ok = cowboy_http_req:chunk("Hello\r\n", Req2),
	ok = timer:sleep(1000),
	ok = cowboy_http_req:chunk("World\r\n", Req2),
	ok = timer:sleep(1000),
	ok = cowboy_http_req:chunk("Chunked!\r\n", Req2),
	{ok, Req2, State}.

terminate(_Req, _State) ->
	ok.