Building Web Applications With Erlang Drmichalore -

-module(my_handler). -export([init/2, terminate/3]). init(Req, State) -> Req2 = cowboy_req:reply(200, # <<"content-type">> => <<"text/html">> , <<"<h1>Hello from Erlang!</h1>">>, Req), ok, Req2, State.

handle(Req, State) -> Body = jiffy:encode(#status => ok, data => [1,2,3]), Req2 = cowboy_req:reply(200, #<<"content-type">> => <<"application/json">>, Body, Req), ok, Req2, State. Implement cowboy_websocket behavior: Building Web Applications With Erlang Drmichalore

terminate(_Reason, _Req, _State) -> ok. In src/my_web_app_sup.erl , add a child: -module(my_handler)

start_child() -> Dispatch = cowboy_router:compile([ '_', [ "/", my_handler, [] ] ]), ok, _ = cowboy:start_clear(my_http_listener, [port, 8080], #env => #dispatch => Dispatch ). rebar3 shell Visit http://localhost:8080 4. Adding JSON API Using jiffy (fast C-based JSON): Req2 = cowboy_req:reply(200

-behaviour(cowboy_websocket). init(Req, State) -> cowboy_websocket, Req, State.

rebar3 compile Create src/my_handler.erl :

deps, [ cowboy, "2.9.0" ]. Then:

More info Accept cookies

This website uses cookies to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners who may combine it with other information you’ve provided to them or they’ve collected from your use of their services. By continuing to browse this site, you are agreeing to our use of cookies.