tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

file_referrer_policyserver.sjs (1219B)


      1 /**
      2  * Renders a link with the provided referrer policy.
      3  * Used in browser_referrer_*.js, bug 1113431.
      4  * Arguments: ?scheme=http://&policy=origin&rel=noreferrer
      5  */
      6 function handleRequest(request, response) {
      7   let query = new URLSearchParams(request.queryString);
      8 
      9   let scheme = query.get("scheme");
     10   let policy = query.get("policy");
     11   let rel = query.get("rel");
     12   let cross = query.get("cross");
     13 
     14   let host = cross ? "example.com" : "test1.example.com";
     15   let linkUrl =
     16     scheme +
     17     host +
     18     "/browser/browser/base/content/test/referrer/" +
     19     "file_referrer_testserver.sjs";
     20   let metaReferrerTag = policy
     21     ? `<meta name='referrer' content='${policy}'>`
     22     : "";
     23 
     24   let html = `<!DOCTYPE HTML>
     25               <html>
     26               <head>
     27               <meta charset='utf-8'>
     28               ${metaReferrerTag}
     29               <title>Test referrer</title>
     30               </head>
     31               <body>
     32               <a id='testlink' href='${linkUrl}' ${rel ? ` rel='${rel}'` : ""}>
     33               referrer test link</a>
     34               </body>
     35               </html>`;
     36 
     37   response.setHeader("Cache-Control", "no-cache", false);
     38   response.setHeader("Content-Type", "text/html", false);
     39   response.write(html);
     40 }