Loïc Hoguin 62de3a62f9 Update to erlang.mk 1.0.0 10 years ago
..
src 1a4e7a8618 Fix the list of registered processes in the examples 11 years ago
Makefile 62de3a62f9 Update to erlang.mk 1.0.0 10 years ago
README.md abcc6e96d8 Update erlang.mk and update paths to start the release 10 years ago
relx.config 81843414b0 Convert the REST hello world example to a release 11 years ago

README.md

REST hello world example

To try this example, you need GNU make and git in your PATH.

To build the example, run the following command:

$ make

To start the release in the foreground:

$ ./_rel/rest_hello_world_example/bin/rest_hello_world_example console

Then point your browser at http://localhost:8080.

Example output

Request HTML:

$ curl -i http://localhost:8080
HTTP/1.1 200 OK
connection: keep-alive
server: Cowboy
date: Fri, 28 Sep 2012 04:15:52 GMT
content-length: 136
content-type: text/html
vary: Accept

<html>
<head>
  <meta charset="utf-8">
  <title>REST Hello World!</title>
</head>
<body>
  <p>REST Hello World as HTML!</p>
</body>
</html>

Request JSON:

$ curl -i -H "Accept: application/json" http://localhost:8080
HTTP/1.1 200 OK
connection: keep-alive
server: Cowboy
date: Fri, 28 Sep 2012 04:16:46 GMT
content-length: 24
content-type: application/json
vary: Accept

{"rest": "Hello World!"}

Request plain text:

$ curl -i -H "Accept: text/plain" http://localhost:8080
HTTP/1.1 200 OK
connection: keep-alive
server: Cowboy
date: Fri, 28 Sep 2012 04:18:35 GMT
content-length: 25
content-type: text/plain
vary: Accept

REST Hello World as text!

Request a non acceptable content-type:

$ curl -i -H "Accept: text/css" http://localhost:8080
HTTP/1.1 406 Not Acceptable
connection: keep-alive
server: Cowboy
date: Fri, 28 Sep 2012 04:18:51 GMT
content-length: 0