tor-browser

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

reflect_headers.py (655B)


      1 import json
      2 
      3 from wptserve.utils import isomorphic_decode
      4 
      5 # Returns the request headers as JSON, so we can test if a header is
      6 # included or excluded.
      7 def main(request, response):
      8    normalized = dict()
      9 
     10    for key, values in dict(request.headers).items():
     11        new_values = [isomorphic_decode(value) for value in values]
     12        normalized[isomorphic_decode(key.lower())] = new_values
     13 
     14    headers = []
     15    if request.headers.get(b"origin") != None:
     16      headers = [(b"Access-Control-Allow-Origin",request.headers.get(b"origin")),
     17                 (b"Access-Control-Allow-Credentials", b"true")]
     18 
     19    return (200, headers, json.dumps(normalized))