early_hint_preconnect_html.sjs (809B)
1 "use strict"; 2 3 function handleRequest(request, response) { 4 let qs = new URLSearchParams(request.queryString); 5 let href = qs.get("href"); 6 let crossOrigin = qs.get("crossOrigin"); 7 8 // write to raw socket 9 response.seizePower(); 10 11 response.write("HTTP/1.1 103 Early Hint\r\n"); 12 response.write( 13 `Link: <${href}>; rel=preconnect; crossOrigin=${crossOrigin}\r\n` 14 ); 15 response.write("\r\n"); 16 17 let body = `<!DOCTYPE html> 18 <html> 19 <body> 20 <h1>Test rel=preconnect<h1> 21 </body> 22 </html>`; 23 24 response.write("HTTP/1.1 200 OK\r\n"); 25 response.write("Content-Type: text/html;charset=utf-8\r\n"); 26 response.write("Cache-Control: no-cache\r\n"); 27 response.write(`Content-Length: ${body.length}\r\n`); 28 response.write("\r\n"); 29 response.write(body); 30 31 response.finish(); 32 }