diff options
author | Loïc Hoguin <[email protected]> | 2016-06-13 16:26:00 +0200 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2016-06-13 16:26:00 +0200 |
commit | 6f75598b70801bbfb6828e5367bc7ed7477ad915 (patch) | |
tree | eabd6bdb5a0738b1f616aefdda718c3fedff2423 /examples | |
parent | b82bb92f7e6cf751ec74fc8aec0bfea84bfc5415 (diff) | |
download | cowboy-6f75598b70801bbfb6828e5367bc7ed7477ad915.tar.gz cowboy-6f75598b70801bbfb6828e5367bc7ed7477ad915.tar.bz2 cowboy-6f75598b70801bbfb6828e5367bc7ed7477ad915.zip |
Fix chunked_hello_world example
Diffstat (limited to 'examples')
-rw-r--r-- | examples/chunked_hello_world/README.asciidoc | 60 | ||||
-rw-r--r-- | examples/chunked_hello_world/src/chunked_hello_world_app.erl | 6 | ||||
-rw-r--r-- | examples/chunked_hello_world/src/toppage_handler.erl | 10 |
3 files changed, 67 insertions, 9 deletions
diff --git a/examples/chunked_hello_world/README.asciidoc b/examples/chunked_hello_world/README.asciidoc index 4b4225d..f3e4c2a 100644 --- a/examples/chunked_hello_world/README.asciidoc +++ b/examples/chunked_hello_world/README.asciidoc @@ -10,7 +10,7 @@ $ make run Then point your browser to http://localhost:8080 or use `curl` to see the chunks arriving one at a time every second. -== Example output +== HTTP/1.1 example output [source,bash] ---- @@ -26,3 +26,61 @@ World Chunked! curl -i http://localhost:8080 0.01s user 0.00s system 0% cpu 2.015 total ---- + +== HTTP/2 example output + +[source,bash] +---- +$ nghttp -v http://localhost:8080 +[ 0.000] Connected +[ 0.000] send SETTINGS frame <length=12, flags=0x00, stream_id=0> + (niv=2) + [SETTINGS_MAX_CONCURRENT_STREAMS(0x03):100] + [SETTINGS_INITIAL_WINDOW_SIZE(0x04):65535] +[ 0.000] send PRIORITY frame <length=5, flags=0x00, stream_id=3> + (dep_stream_id=0, weight=201, exclusive=0) +[ 0.000] send PRIORITY frame <length=5, flags=0x00, stream_id=5> + (dep_stream_id=0, weight=101, exclusive=0) +[ 0.000] send PRIORITY frame <length=5, flags=0x00, stream_id=7> + (dep_stream_id=0, weight=1, exclusive=0) +[ 0.000] send PRIORITY frame <length=5, flags=0x00, stream_id=9> + (dep_stream_id=7, weight=1, exclusive=0) +[ 0.000] send PRIORITY frame <length=5, flags=0x00, stream_id=11> + (dep_stream_id=3, weight=1, exclusive=0) +[ 0.000] send HEADERS frame <length=38, flags=0x25, stream_id=13> + ; END_STREAM | END_HEADERS | PRIORITY + (padlen=0, dep_stream_id=11, weight=16, exclusive=0) + ; Open new stream + :method: GET + :path: / + :scheme: http + :authority: localhost:8080 + accept: */* + accept-encoding: gzip, deflate + user-agent: nghttp2/1.7.1 +[ 0.006] recv SETTINGS frame <length=0, flags=0x00, stream_id=0> + (niv=0) +[ 0.006] recv SETTINGS frame <length=0, flags=0x01, stream_id=0> + ; ACK + (niv=0) +[ 0.006] send SETTINGS frame <length=0, flags=0x01, stream_id=0> + ; ACK + (niv=0) +[ 0.010] recv (stream_id=13) :status: 200 +[ 0.010] recv (stream_id=13) date: Mon, 13 Jun 2016 14:16:26 GMT +[ 0.010] recv (stream_id=13) server: Cowboy +[ 0.010] recv HEADERS frame <length=32, flags=0x04, stream_id=13> + ; END_HEADERS + (padlen=0) + ; First response header +Hello +[ 0.010] recv DATA frame <length=7, flags=0x00, stream_id=13> +World +[ 1.012] recv DATA frame <length=7, flags=0x00, stream_id=13> +Chunked! +[ 2.013] recv DATA frame <length=10, flags=0x00, stream_id=13> +[ 2.013] recv DATA frame <length=0, flags=0x01, stream_id=13> + ; END_STREAM +[ 2.013] send GOAWAY frame <length=8, flags=0x00, stream_id=0> + (last_stream_id=0, error_code=NO_ERROR(0x00), opaque_data(0)=[]) +---- diff --git a/examples/chunked_hello_world/src/chunked_hello_world_app.erl b/examples/chunked_hello_world/src/chunked_hello_world_app.erl index 0032d01..fe66908 100644 --- a/examples/chunked_hello_world/src/chunked_hello_world_app.erl +++ b/examples/chunked_hello_world/src/chunked_hello_world_app.erl @@ -16,9 +16,9 @@ start(_Type, _Args) -> {"/", toppage_handler, []} ]} ]), - {ok, _} = cowboy:start_http(http, 100, [{port, 8080}], [ - {env, [{dispatch, Dispatch}]} - ]), + {ok, _} = cowboy:start_clear(http, 100, [{port, 8080}], #{ + env => #{dispatch => Dispatch} + }), chunked_hello_world_sup:start_link(). stop(_State) -> diff --git a/examples/chunked_hello_world/src/toppage_handler.erl b/examples/chunked_hello_world/src/toppage_handler.erl index cb1d130..22e52b9 100644 --- a/examples/chunked_hello_world/src/toppage_handler.erl +++ b/examples/chunked_hello_world/src/toppage_handler.erl @@ -6,10 +6,10 @@ -export([init/2]). init(Req, Opts) -> - Req2 = cowboy_req:chunked_reply(200, Req), - cowboy_req:chunk("Hello\r\n", Req2), + cowboy_req:chunked_reply(200, Req), + cowboy_req:chunk("Hello\r\n", Req), timer:sleep(1000), - cowboy_req:chunk("World\r\n", Req2), + cowboy_req:chunk("World\r\n", Req), timer:sleep(1000), - cowboy_req:chunk("Chunked!\r\n", Req2), - {ok, Req2, Opts}. + cowboy_req:chunk("Chunked!\r\n", Req), + {ok, Req, Opts}. |