Revision 888f7dfb2dcd37a8e99ecb741ac46eed46ce804f authored by Chris Harrelson on 21 March 2018, 17:47:30 UTC, committed by Blink WPT Bot on 21 March 2018, 18:19:40 UTC
Intent to ship:

https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/DHSUFGpZafc

Bug: 723076
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I09d422e0fa9888610cfb3a8acfcea6c9f8c8de24
Reviewed-on: https://chromium-review.googlesource.com/831397
Commit-Queue: Chris Harrelson <chrishtr@chromium.org>
Reviewed-by: Fredrik Söderquist <fs@opera.com>
Cr-Commit-Position: refs/heads/master@{#544756}
1 parent dbb38a6
Raw File
cors.py
import os
from wptserve import pipes

def run_other(request, response, path):
    #This is a terrible hack
    environ = {"__file__": path}
    execfile(path, environ, environ)
    rv = environ["main"](request, response)
    return rv

def main(request, response):
    origin = request.GET.first("origin", request.headers["origin"])
    credentials = request.GET.first("credentials", "true")

    response.headers.update([("Access-Control-Allow-Origin", origin),
                             ("Access-Control-Allow-Credentials", credentials)])

    handler = request.GET.first('run')
    if handler in ["status-reconnect",
                   "message",
                   "redirect",
                   "cache-control"]:
        if handler == "cache-control":
            response.headers.set("Content-Type", "text/event-stream")
            rv = open(os.path.join(request.doc_root, "eventsource", "resources", "cache-control.event_stream"), "r").read()
            response.content = rv
            pipes.sub(request, response)
            return
        elif handler == "redirect":
            return run_other(request, response, os.path.join(request.doc_root, "common", "redirect.py"))
        else:
            return run_other(request, response, os.path.join(os.path.split(__file__)[0], handler + ".py"))
    else:
        return
back to top