Radomir Stevanovic 9a56bb8dd0 bugfix: JSON-safe encoding of raw binary data/files
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`.
2012-08-14 22:57:35 +02:00
ISC
2011-06-13 01:37:31 -04:00
2012-02-20 12:48:57 -05:00
2011-06-12 18:25:20 -04:00
2011-10-15 10:34:32 -04:00
2012-06-09 11:19:14 -04:00
2012-06-30 02:08:36 +02:00
2011-12-14 10:27:48 -05:00

httpbin(1): HTTP Request & Response Service

Freely hosted in HTTP & HTTPS flavors.

ENDPOINTS

DESCRIPTION

Testing an HTTP Library can become difficult sometimes. PostBin.org is fantastic for testing POST requests, but not much else. This exists to cover all kinds of HTTP scenarios. Additional endpoints are being considered (e.g. /deflate).

All endpoint responses are JSON-encoded.

EXAMPLES

$ curl http://httpbin.org/ip

{"origin": "24.127.96.129"}

$ curl http://httpbin.org/user-agent

{"user-agent": "curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL/0.9.8l zlib/1.2.3"}

$ curl http://httpbin.org/get

{
   "args": {},
   "headers": {
      "Accept": "*/*",
      "Connection": "close",
      "Content-Length": "",
      "Content-Type": "",
      "Host": "httpbin.org",
      "User-Agent": "curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL/0.9.8l zlib/1.2.3"
   },
   "origin": "24.127.96.129",
   "url": "http://httpbin.org/get"
}

$ curl -I http://httpbin.org/status/418

HTTP/1.1 418 I'M A TEAPOT
Server: nginx/0.7.67
Date: Mon, 13 Jun 2011 04:25:38 GMT
Connection: close
x-more-info: http://tools.ietf.org/html/rfc2324
Content-Length: 135

AUTHOR

A Kenneth Reitz Project.

SEE ALSO

http://python-requests.org

S
Description
No description provided
Readme ISC 904 KiB
Languages
Python 77.4%
HTML 22.2%
Dockerfile 0.4%