-module(hello).
-compile({parse_transform, leptus_pt}).
%% leptus callbacks
-export([init/3]).
-export([get/3]).
-export([terminate/4]).
init(_Route, _Req, State) ->
{ok, State}.
get("/", _Req, State) ->
{<<"Hello, leptus!">>, State};
get("/hi/:name", Req, State) ->
Status = ok,
Name = leptus_req:param(Req, name),
Body = [{<<"say">>, <<"Hi">>}, {<<"to">>, Name}],
{Status, {json, Body}, State}.
terminate(_Reason, _Route, _Req, _State) ->
ok.
Note the use of the following in your request/resource handler module.
-compile({parse_transform, leptus_pt}).
Let’s compile and run the example above.
$ erl -pa ebin deps/*/ebin
> c(hello). > leptus:start_listener(http, [{'_', [{hello, undefined_state}]}]). Leptus started on http://127.0.0.1:8080
$ curl localhost:8080/hi/Leptus {"say":"Hi","to":"Leptus"}
- Types
- Callbacks
- Request
- Configuration
- Start
- Modules