docshell/test/browser/print_postdata.sjs

Thu, 15 Jan 2015 21:03:48 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 21:03:48 +0100
branch
TOR_BUG_9701
changeset 11
deefc01c0e14
permissions
-rw-r--r--

Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)

     1 const CC = Components.Constructor;
     2 const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1",
     3                              "nsIBinaryInputStream",
     4                              "setInputStream");
     6 function handleRequest(request, response) {
     7   response.setHeader("Content-Type", "text/plain", false);
     8   if (request.method == "GET") {
     9     response.write(request.queryString);
    10   } else {
    11     var body = new BinaryInputStream(request.bodyInputStream);
    13     var avail;
    14     var bytes = [];
    16     while ((avail = body.available()) > 0)
    17       Array.prototype.push.apply(bytes, body.readByteArray(avail));
    19     var data = String.fromCharCode.apply(null, bytes);
    20     response.bodyOutputStream.write(data, data.length);
    21   }
    22 }

mercurial