0
Fork 0
mirror of https://github.com/ninenines/cowboy.git synced 2025-07-14 12:20:24 +00:00
cowboy/examples/rest_stream_response
Loïc Hoguin 394b4f0bf7 Simplify example instructions and fix broken examples
Also convert to AsciiDoc while we're at it.
2016-01-14 20:00:50 +01:00
..
src Improve handler interface and documentation 2014-09-30 20:12:13 +03:00
Makefile Make examples use Cowboy master 2014-10-03 16:28:02 +03:00
README.asciidoc Simplify example instructions and fix broken examples 2016-01-14 20:00:50 +01:00
relx.config Convert the REST streaming example to a release 2013-09-08 19:50:31 +02:00

= 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

----