/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, you can obtain one at http://mozilla.org/MPL/2.0/. */ Cu.importGlobalProperties(["TextEncoder"]); function handleRequest(request, response) { if (!request.hasHeader("Authorization")) { response.setStatusLine("1.1", 401, "Unauthorized"); response.setHeader("WWW-Authenticate", `Basic realm="test"`); return; } response.setStatusLine("1.1", 207, "Multi-Status"); response.setHeader("Content-Type", "text/xml; charset=utf-8", false); // Request: // // // // // // // // let res = ` /browser/comm/calendar/test/browser/data/calendars.sjs Things found by DNS HTTP/1.1 200 OK HTTP/1.1 404 Not Found /browser/comm/calendar/test/browser/data/calendar.sjs You found me! #008000 HTTP/1.1 200 OK HTTP/1.1 404 Not Found /browser/comm/calendar/test/browser/data/calendar2.sjs Röda dagar #ff0000 HTTP/1.1 200 OK HTTP/1.1 404 Not Found `; let bytes = new TextEncoder().encode(res); let str = ""; for (let i = 0; i < bytes.length; i += 65536) { str += String.fromCharCode.apply(null, bytes.subarray(i, i + 65536)); } response.write(str); }