Loïc Hoguin 81843414b0 Convert the REST hello world example to a release 11 years ago
..
src 81843414b0 Convert the REST hello world example to a release 11 years ago
Makefile 81843414b0 Convert the REST hello world example to a release 11 years ago
README.md 81843414b0 Convert the REST hello world example to a release 11 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, git and relx in your PATH.

To build the example, run the following command:

$ make

To start the release in the foreground:

$ ./_rel/bin/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