2016-01-14 20:00:50 +01:00
|
|
|
= REST hello world example
|
2012-07-22 04:46:05 +02:00
|
|
|
|
2013-10-22 09:14:32 +02:00
|
|
|
To try this example, you need GNU `make` and `git` in your PATH.
|
2012-07-22 04:46:05 +02:00
|
|
|
|
2016-01-14 20:00:50 +01:00
|
|
|
To build and run the example, use the following command:
|
2012-07-22 04:46:05 +02:00
|
|
|
|
2016-01-14 20:00:50 +01:00
|
|
|
[source,bash]
|
|
|
|
$ make run
|
2013-09-08 12:22:30 +02:00
|
|
|
|
2016-01-14 20:00:50 +01:00
|
|
|
Then point your browser to http://localhost:8080
|
2013-09-08 12:22:30 +02:00
|
|
|
|
2016-01-14 20:00:50 +01:00
|
|
|
== Example output
|
2012-09-27 21:32:11 -07:00
|
|
|
|
2013-09-08 12:22:30 +02:00
|
|
|
Request HTML:
|
2012-09-27 21:32:11 -07:00
|
|
|
|
2016-01-14 20:00:50 +01:00
|
|
|
[source,bash]
|
|
|
|
----
|
2012-09-27 21:32:11 -07:00
|
|
|
$ 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
|
2013-09-08 12:22:30 +02:00
|
|
|
content-type: text/html
|
|
|
|
vary: Accept
|
2012-09-27 21:32:11 -07:00
|
|
|
|
|
|
|
<html>
|
|
|
|
<head>
|
|
|
|
<meta charset="utf-8">
|
|
|
|
<title>REST Hello World!</title>
|
|
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<p>REST Hello World as HTML!</p>
|
|
|
|
</body>
|
|
|
|
</html>
|
2016-01-14 20:00:50 +01:00
|
|
|
----
|
2012-09-27 21:32:11 -07:00
|
|
|
|
2013-09-08 12:22:30 +02:00
|
|
|
Request JSON:
|
2012-09-27 21:32:11 -07:00
|
|
|
|
2016-01-14 20:00:50 +01:00
|
|
|
[source,bash]
|
|
|
|
----
|
2012-09-27 21:32:11 -07:00
|
|
|
$ 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
|
2013-09-08 12:22:30 +02:00
|
|
|
content-type: application/json
|
|
|
|
vary: Accept
|
2012-09-27 21:32:11 -07:00
|
|
|
|
|
|
|
{"rest": "Hello World!"}
|
2016-01-14 20:00:50 +01:00
|
|
|
----
|
2012-09-27 21:32:11 -07:00
|
|
|
|
2013-09-08 12:22:30 +02:00
|
|
|
Request plain text:
|
2012-09-27 21:32:11 -07:00
|
|
|
|
2016-01-14 20:00:50 +01:00
|
|
|
[source,bash]
|
|
|
|
----
|
2012-09-27 21:32:11 -07:00
|
|
|
$ 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
|
2013-09-08 12:22:30 +02:00
|
|
|
content-type: text/plain
|
|
|
|
vary: Accept
|
2012-09-27 21:32:11 -07:00
|
|
|
|
|
|
|
REST Hello World as text!
|
2016-01-14 20:00:50 +01:00
|
|
|
----
|
2012-09-27 21:32:11 -07:00
|
|
|
|
2013-09-08 12:22:30 +02:00
|
|
|
Request a non acceptable content-type:
|
|
|
|
|
2016-01-14 20:00:50 +01:00
|
|
|
[source,bash]
|
|
|
|
----
|
2012-09-27 21:32:11 -07:00
|
|
|
$ 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
|
|
|
|
|
2016-01-14 20:00:50 +01:00
|
|
|
----
|