summaryrefslogtreecommitdiffstats
path: root/dom/xhr/tests/responseIdentical.sjs
blob: 0e7b796e0fe88f73a9022e56a2a59c91d0ef50e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
const CC = Components.Constructor;
const BinaryInputStream = CC(
  "@mozilla.org/binaryinputstream;1",
  "nsIBinaryInputStream",
  "setInputStream"
);

// Simply sending back the same data that is received
function handleRequest(request, response) {
  var body = "";
  var bodyStream = new BinaryInputStream(request.bodyInputStream);
  var avail = 0;
  while ((avail = bodyStream.available()) > 0) {
    body += String.fromCharCode.apply(String, bodyStream.readByteArray(avail));
  }

  response.setHeader("Content-Type", "application/octet-stream", false);
  response.write(body);
}