'/bytes/:n' takes and optional 'seed' integer parameter, and returns n random
bytes of binary data (limited to 100KB in size).
'/stream-bytes/:n' is the same as above, but streams the data. As well as a
'seed' parameter, it accepts a 'chunk_size' parameter, which determines how
many bytes are in each packet that is streamed.
'/links/:n' generates a page containing n links, each of which links to another
page containing those n links. The value of n is limited to 200.
Encoding of the received files and/or body data was failing in case of raw
binary data being POSTed/PUT/etc. (The exact trigger was actually a non-UTF-8
data stream, since Flask's `jsonify`, i.e. `simplejson.dumps` assumes UTF-8.)
Binary data in a JSON response are now encoded as "data" URLs, according to
RFC 2397. "Data" URL scheme was chosen for its simplicity and clarity. MIME
type is included. Plain text is passed thru unmodified, as before.
Also, tests demonstrating the bug/fix added to `test_httpbin.py`.