diff --git a/README.md b/README.md index a3551b30..cebe45a6 100644 --- a/README.md +++ b/README.md @@ -54,30 +54,34 @@ listener a unique name. Code speaks more than words: - application:start(cowboy), - Dispatch = [ - %% {Host, list({Path, Handler, Opts})} - {'_', [{'_', my_handler, []}]} - ], - %% Name, NbAcceptors, Transport, TransOpts, Protocol, ProtoOpts - cowboy:start_listener(http, 100, - cowboy_tcp_transport, [{port, 8080}], - cowboy_http_protocol, [{dispatch, Dispatch}] - ). +``` erlang +application:start(cowboy), +Dispatch = [ + %% {Host, list({Path, Handler, Opts})} + {'_', [{'_', my_handler, []}]} +], +%% Name, NbAcceptors, Transport, TransOpts, Protocol, ProtoOpts +cowboy:start_listener(http, 100, + cowboy_tcp_transport, [{port, 8080}], + cowboy_http_protocol, [{dispatch, Dispatch}] +). +``` You must also write the `my_handler` module to process requests. You can use one of the predefined handlers or write your own. An hello world HTTP handler could be written like this: - -module(my_handler). - -export([init/3, handle/2, terminate/2]). +``` erlang +-module(my_handler). +-export([init/3, handle/2, terminate/2]). - init({tcp, http}, Req, Opts) -> - {ok, Req, undefined}. +init({tcp, http}, Req, Opts) -> + {ok, Req, undefined}. - handle(Req, State) -> - {ok, Req2} = cowboy_http_req:reply(200, [], "Hello World!", Req), - {ok, Req2, State}. +handle(Req, State) -> + {ok, Req2} = cowboy_http_req:reply(200, [], "Hello World!", Req), + {ok, Req2, State}. - terminate(Req, State) -> - ok. +terminate(Req, State) -> + ok. +```