1
0
Fork 0
firefox/devtools/client/netmonitor/test/sjs_json-test-server.sjs
Daniel Baumann 5e9a113729
Adding upstream version 140.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-25 09:37:52 +02:00

43 lines
1.3 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
"use strict";
function handleRequest(request, response) {
response.setStatusLine(request.httpVersion, 200, "OK");
response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate");
response.setHeader("Pragma", "no-cache");
response.setHeader("Expires", "0");
response.setHeader("Content-Type", "application/json; charset=utf-8", false);
// This server checks the name parameter from the request to decide which JSON object to
// return.
const params = request.queryString.split("&");
const name = (params.filter(s => s.includes("name="))[0] || "").split("=")[1];
switch (name) {
case "null":
response.write('{ "greeting": null }');
break;
case "root-null":
response.write(`null`);
break;
case "nogrip":
response.write('{"obj": {"type": "string" }}');
break;
case "empty":
response.write("{}");
break;
case "numbers":
response.write(`{
"small": 12,
"negzero": -0,
"big": 1516340399466235648,
"precise": 3.141592653589793238462643383279,
"exp": 1e2
}`);
break;
case "large-root-integer":
response.write(`1516340399466235648`);
break;
}
}