counter_server.sjs (745B)
1 function handleRequest(request, response) { 2 if (request.queryString == "reset") { 3 setState("counter", "0"); 4 5 response.setStatusLine(request.httpVersion, 200, "OK"); 6 response.setHeader("Content-Type", "text/text", false); 7 const body = "reset"; 8 response.bodyOutputStream.write(body, body.length); 9 return; 10 } 11 12 let counter = parseInt(getState("counter")); 13 setState("counter", (counter + 1).toString()); 14 15 response.setStatusLine(request.httpVersion, 200, "OK"); 16 response.setHeader("Cache-Control", "max-age=10000", false); 17 response.setHeader("Content-Type", "text/javascript", false); 18 const body = ` 19 document.body.setAttribute("counter", "${counter}"); 20 `; 21 response.bodyOutputStream.write(body, body.length); 22 }