blob: 2cda0b90f7db92690e3242f58bf8d24db77e8fab (
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
|
"use strict";
// usage via url parameters:
// - link: if set sends a link header with the given link value as an early hint repsonse
// - location: sets destination of 301 response
function handleRequest(request, response) {
Cu.importGlobalProperties(["URLSearchParams"]);
let qs = new URLSearchParams(request.queryString);
let link = qs.get("link");
let location = qs.get("location");
// write to raw socket
response.seizePower();
if (link != undefined) {
response.write("HTTP/1.1 103 Early Hint\r\n");
response.write(`Link: ${link}\r\n`);
response.write("\r\n");
}
response.write("HTTP/1.1 307 Temporary Redirect\r\n");
response.write(`Location: ${location}\r\n`);
response.write("\r\n");
response.finish();
}
|