mirror of
https://github.com/ninenines/cowboy.git
synced 2025-07-16 13:10:24 +00:00
Add a REST Hello World example
This commit is contained in:
parent
6ea32d605d
commit
f212cafad2
8 changed files with 141 additions and 0 deletions
39
examples/rest_hello_world/src/toppage_handler.erl
Normal file
39
examples/rest_hello_world/src/toppage_handler.erl
Normal file
|
@ -0,0 +1,39 @@
|
|||
%% Feel free to use, reuse and abuse the code in this file.
|
||||
|
||||
%% @doc Hello world handler.
|
||||
-module(toppage_handler).
|
||||
|
||||
-export([init/3]).
|
||||
-export([content_types_provided/2]).
|
||||
-export([hello_to_html/2]).
|
||||
-export([hello_to_json/2]).
|
||||
-export([hello_to_text/2]).
|
||||
|
||||
init(_Transport, _Req, []) ->
|
||||
{upgrade, protocol, cowboy_http_rest}.
|
||||
|
||||
content_types_provided(Req, State) ->
|
||||
{[
|
||||
{<<"text/html">>, hello_to_html},
|
||||
{<<"application/json">>, hello_to_json},
|
||||
{<<"text/plain">>, hello_to_text}
|
||||
], Req, State}.
|
||||
|
||||
hello_to_html(Req, State) ->
|
||||
Body = <<"<html>
|
||||
<head>
|
||||
<meta charset=\"utf-8\">
|
||||
<title>REST Hello World!</title>
|
||||
</head>
|
||||
<body>
|
||||
<p>REST Hello World as HTML!</p>
|
||||
</body>
|
||||
</html>">>,
|
||||
{Body, Req, State}.
|
||||
|
||||
hello_to_json(Req, State) ->
|
||||
Body = <<"{\"rest\": \"Hello World!\"}">>,
|
||||
{Body, Req, State}.
|
||||
|
||||
hello_to_text(Req, State) ->
|
||||
{<<"REST Hello World as text!">>, Req, State}.
|
Loading…
Add table
Add a link
Reference in a new issue