1
0
Fork 0
firefox/toolkit/components/antitracking/bouncetrackingprotection/test/browser/file_bounce.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

36 lines
1.1 KiB
JavaScript

function handleRequest(request, response) {
response.setHeader("Cache-Control", "no-cache", false);
let query = new URLSearchParams(request.queryString);
let setState = query.get("setState");
if (setState == "cookie-server") {
let cookieHeader = "foo=bar;";
if (query.get("isThirdParty") === "true") {
// If we're in the third-party context request a partitioned cookies
// for compatibility with CHIPS / 3rd party cookies being blocked by
// default.
cookieHeader += "SameSite=None; Secure; Partitioned;";
}
response.setHeader("Set-Cookie", cookieHeader);
}
let statusCode = 200;
let statusCodeQuery = query.get("statusCode");
if (statusCodeQuery) {
statusCode = Number.parseInt(statusCodeQuery);
// Server side redirect.
if (statusCode == 301 || statusCode == 302) {
response.setStatusLine("1.1", statusCode, "Found");
response.setHeader("Location", query.get("target"), false);
return;
}
}
// No redirect.
response.setStatusLine("1.1", statusCode, "OK");
response.write(JSON.stringify(Object.fromEntries(query), null, 2));
}