summaryrefslogtreecommitdiffstats
path: root/dom/media/test/gzipped_mp4.sjs
blob: b08362d75e004724da91d01875626647d4f1aa21 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
function getGzippedFileBytes() {
  var file;
  getObjectState("SERVER_ROOT", function (serverRoot) {
    file = serverRoot.getFile("tests/dom/media/test/short.mp4.gz");
  });
  var fileInputStream = Cc[
    "@mozilla.org/network/file-input-stream;1"
  ].createInstance(Ci.nsIFileInputStream);
  var binaryInputStream = Cc["@mozilla.org/binaryinputstream;1"].createInstance(
    Ci.nsIBinaryInputStream
  );
  fileInputStream.init(file, -1, -1, 0);
  binaryInputStream.setInputStream(fileInputStream);
  return binaryInputStream.readBytes(binaryInputStream.available());
}

function handleRequest(request, response) {
  var bytes = getGzippedFileBytes();
  response.setHeader("Content-Length", String(bytes.length), false);
  response.setHeader("Content-Type", "video/mp4", false);
  response.setHeader("Access-Control-Allow-Origin", "*", false);
  response.setHeader("Content-Encoding", "gzip", false);
  response.setHeader("Cache-Control", "no-cache", false);
  response.write(bytes, bytes.length);
}