Code Snippet
Using curl
:
$ curl http://stackoverflow.hewgill.com:8080/firehose/stackoverflow
or, in a browser, http://stackoverflow.hewgill.com:8080/firehose/stackoverflow.
About
This "firehose" service repackages the stream provided by the /events service into a form similar to the Twitter Streaming API.
Each event is sent in an individual snippet of JSON. Each snippet is followed by a carriage return (\r
) plus one or more newlines (\n
). Newlines may be sent periodically between snippets to help keep connections open.
The current average rate of new events from Stack Overflow is less than one per second.
At present, only the stackoverflow
event feed is supported. Supporting all SE sites would currently require too many separate API requests to the /events service.
This is mostly intended as a "proof of concept" demonstrating how such an API could be offered; hopefully this sort of streaming service will be available in a future version of the Stack Exchange API.
Platform
This streaming service can be used by any HTTP client that can consume a response of indefinite length. The responses have an Access-Control-Allow-Origin: *
header which makes this possible to use in a browser.
Contact
Please let me know if you are using this service, as I may change things that affect users.
Code
This service is written in Erlang using Mochiweb.
curl http://stackoverflow.hewgill.com:8080/firehose/stackoverflow
/events
service does not return tag information, so a request would need to be made for each question (these can be batched). This is something a client can do if required./events
interface directly; the stuff I wrote is designed for consumption within a browser.