Leptus Documentation
Quick Overview
-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, 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"}