cookieServer.sjs (1103B)
1 /* Any copyright is dedicated to the Public Domain. 2 * http://creativecommons.org/publicdomain/zero/1.0/ 3 */ 4 5 // A 1x1 PNG image. 6 // Source: https://commons.wikimedia.org/wiki/File:1x1.png (Public Domain) 7 const IMAGE = atob( 8 "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + 9 "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=" 10 ); 11 12 function handleRequest(request, response) { 13 response.setStatusLine(request.httpVersion, 200); 14 if ( 15 request.queryString && 16 request.queryString.includes("type=image-no-cookie") 17 ) { 18 response.setHeader("Content-Type", "image/png", false); 19 response.write(IMAGE); 20 } else if ( 21 request.queryString && 22 request.queryString.includes("type=partitioned") 23 ) { 24 response.setHeader("Access-Control-Allow-Origin", "https://example.net"); 25 response.setHeader("Access-Control-Allow-Credentials", "true"); 26 response.setHeader( 27 "Set-Cookie", 28 "foopy=1; SameSite=None; Secure; Partitioned" 29 ); 30 } else { 31 response.setHeader("Set-Cookie", "foopy=1"); 32 response.write("cookie served"); 33 } 34 }