aboutsummaryrefslogtreecommitdiffstats
path: root/examples/cookie/src/toppage_h.erl
diff options
context:
space:
mode:
Diffstat (limited to 'examples/cookie/src/toppage_h.erl')
-rw-r--r--examples/cookie/src/toppage_h.erl21
1 files changed, 21 insertions, 0 deletions
diff --git a/examples/cookie/src/toppage_h.erl b/examples/cookie/src/toppage_h.erl
new file mode 100644
index 0000000..308899b
--- /dev/null
+++ b/examples/cookie/src/toppage_h.erl
@@ -0,0 +1,21 @@
+%% Feel free to use, reuse and abuse the code in this file.
+
+%% @doc Cookie handler.
+-module(toppage_h).
+
+-export([init/2]).
+
+init(Req0, Opts) ->
+ NewValue = integer_to_list(rand:uniform(1000000)),
+ Req1 = cowboy_req:set_resp_cookie(<<"server">>, NewValue,
+ Req0, #{path => <<"/">>}),
+ #{client := ClientCookie, server := ServerCookie}
+ = cowboy_req:match_cookies([{client, [], <<>>}, {server, [], <<>>}], Req1),
+ {ok, Body} = toppage_dtl:render([
+ {client, ClientCookie},
+ {server, ServerCookie}
+ ]),
+ Req = cowboy_req:reply(200, #{
+ <<"content-type">> => <<"text/html">>
+ }, Body, Req1),
+ {ok, Req, Opts}.