server_manifest.sjs (1483B)
1 /* Any copyright is dedicated to the Public Domain. 2 * http://creativecommons.org/publicdomain/zero/1.0/ 3 */ 4 5 function handleRequest(request, response) { 6 let params = new URLSearchParams(request.queryString); 7 let test = params.get("set_test"); 8 if (test === null) { 9 test = getState("test"); 10 } else { 11 setState("test", test); 12 response.setHeader("Access-Control-Allow-Origin", "*"); 13 response.setStatusLine(request.httpVersion, 200, "OK"); 14 return; 15 } 16 17 if (request.hasHeader("Cookie")) { 18 response.setStatusLine(request.httpVersion, 400, "Bad Request"); 19 return; 20 } 21 if (request.hasHeader("Origin") && request.getHeader("Origin") != "null") { 22 response.setStatusLine(request.httpVersion, 400, "Bad Request"); 23 return; 24 } 25 if (request.hasHeader("Referer")) { 26 response.setStatusLine(request.httpVersion, 400, "Bad Request"); 27 return; 28 } 29 30 response.setHeader("Access-Control-Allow-Origin", "*"); 31 response.setHeader("Content-Type", "application/json"); 32 let content = { 33 accounts_endpoint: 34 "https://example.net/tests/dom/credentialmanagement/identity/tests/mochitest/server_TESTNAME_accounts.sjs", 35 id_assertion_endpoint: 36 "https://example.net/tests/dom/credentialmanagement/identity/tests/mochitest/server_TESTNAME_idtoken.sjs", 37 }; 38 let bodyFormat = JSON.stringify(content); 39 let body = bodyFormat.replaceAll("TESTNAME", test); 40 response.setStatusLine(request.httpVersion, 200, "OK"); 41 response.write(body); 42 }