tor-browser

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

echo-content-cors.py (1107B)


      1 def main(request, response):
      2    headers = [(b"X-Request-Method", request.method),
      3               (b"X-Request-Content-Length", request.headers.get(b"Content-Length", b"NO")),
      4               (b"X-Request-Content-Type", request.headers.get(b"Content-Type", b"NO")),
      5               (b"Access-Control-Allow-Credentials", b"true"),
      6               # Avoid any kind of content sniffing on the response.
      7               (b"Content-Type", b"text/plain")]
      8 
      9    origin = request.GET.first(b"origin", request.headers.get(b"origin"))
     10    if origin != None:
     11        headers.append((b"Access-Control-Allow-Origin", origin))
     12 
     13    request_headers = request.GET.first(b"origin", request.headers.get(b"access-control-request-headers"))
     14    if request_headers != None:
     15        headers.append((b"Access-Control-Allow-Headers", request_headers))
     16 
     17    request_method = request.GET.first(b"origin", request.headers.get(b"access-control-request-method"))
     18    if request_method != None:
     19        headers.append((b"Access-Control-Allow-Methods", b"OPTIONS, " + request_method))
     20 
     21    content = request.body
     22 
     23    return headers, content