aboutsummaryrefslogtreecommitdiffstats
path: root/examples/rest_stream_response/README.asciidoc
diff options
context:
space:
mode:
Diffstat (limited to 'examples/rest_stream_response/README.asciidoc')
-rw-r--r--examples/rest_stream_response/README.asciidoc67
1 files changed, 67 insertions, 0 deletions
diff --git a/examples/rest_stream_response/README.asciidoc b/examples/rest_stream_response/README.asciidoc
new file mode 100644
index 0000000..411c4c4
--- /dev/null
+++ b/examples/rest_stream_response/README.asciidoc
@@ -0,0 +1,67 @@
+= REST streaming example
+
+To try this example, you need GNU `make` and `git` in your PATH.
+
+To build and run the example, use the following command:
+
+[source,bash]
+$ make run
+
+Then point your browser to http://localhost:8080
+
+== About
+
+This example simulates streaming a large amount of data from a data store one
+record at a time in CSV format. It also uses a constraint to ensure that the
+last segment of the route is an integer.
+
+== Example output
+
+Fetch records with the second field with value 1:
+
+[source,bash]
+----
+$ curl -i localhost:8080
+HTTP/1.1 200 OK
+transfer-encoding: identity
+server: Cowboy
+date: Sun, 10 Feb 2013 19:32:16 GMT
+connection: close
+content-type: text/csv
+
+DBUZGQ0C,1,28
+BgoQAxMV,1,6
+DAYEFxER,1,18
+...
+----
+
+Fetch records with the second field with value 4:
+
+[source,bash]
+----
+$ curl -i localhost:8080/4
+HTTP/1.1 200 OK
+transfer-encoding: identity
+server: Cowboy
+date: Sun, 10 Feb 2013 19:34:31 GMT
+connection: close
+content-type: text/csv
+
+ABcFDxcE,4,42
+DgYQCgEE,4,5
+CA8BBhYD,4,10
+...
+----
+
+Fail to use a proper integer and get an error:
+
+[source,bash]
+----
+$ curl -i localhost:8080/foo
+HTTP/1.1 404 Not Found
+connection: keep-alive
+server: Cowboy
+date: Sun, 10 Feb 2013 19:36:16 GMT
+content-length: 0
+
+----