blob: 8a93829fa544791e2d72059260bc2f5756198c25 (
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
var responseServerTiming = [
{ metric: "metric1", duration: "123.4", description: "description1" },
{ metric: "metric2", duration: "456.78", description: "description2" },
];
var trailerServerTiming = [
{ metric: "metric3", duration: "789.11", description: "description3" },
{ metric: "metric4", duration: "1112.13", description: "description4" },
];
function createServerTimingHeader(headerData) {
var header = "";
for (var i = 0; i < headerData.length; i++) {
header +=
"Server-Timing:" +
headerData[i].metric +
";" +
"dur=" +
headerData[i].duration +
";" +
"desc=" +
headerData[i].description +
"\r\n";
}
return header;
}
function handleRequest(request, response) {
var body = "c\r\ndata reached\r\n3\r\nhej\r\n0\r\n";
response.seizePower();
response.write("HTTP/1.1 200 OK\r\n");
response.write("Content-Type: text/plain\r\n");
response.write(createServerTimingHeader(responseServerTiming));
response.write("Transfer-Encoding: chunked\r\n");
response.write("\r\n");
response.write(body);
response.write(createServerTimingHeader(trailerServerTiming));
response.write("\r\n");
response.finish();
}
|