tor-browser

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

access-control-preflight-request-header-sorted.py (800B)


      1 def main(request, response):
      2    response.headers.set(b'Cache-Control', b'no-store')
      3    response.headers.set(b'Access-Control-Allow-Origin',
      4                         request.headers.get(b'origin'))
      5 
      6    headers = b'x-custom-s,x-custom-test,x-custom-u,x-custom-ua,x-custom-v'
      7    if request.method == u'OPTIONS':
      8        response.headers.set(b'Access-Control-Max-Age', b'0')
      9        response.headers.set(b'Access-Control-Allow-Headers', headers)
     10        # Access-Control-Request-Headers should be sorted.
     11        if headers != request.headers.get(b'Access-Control-Request-Headers'):
     12            response.status = 400
     13    else:
     14        if request.headers.get(b'x-custom-s'):
     15            response.content = b'PASS'
     16        else:
     17            response.status = 400
     18            response.content = b'FAIL'