summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/eventsource/resources/status-reconnect.py
blob: 16c6502e3666365c0558cd6db9074acf3e895fa5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
def main(request, response):
    status_code = request.GET.first("status", "204")
    name = request.GET.first("id", status_code)

    headers = [("Content-Type", "text/event-stream")]

    cookie_name = "request" + name

    if request.cookies.first(cookie_name, "") == status_code:
        status = 200
        response.delete_cookie(cookie_name)
        body = "data: data\n\n"
    else:
        response.set_cookie(cookie_name, status_code);
        status = (int(status_code), "TEST")
        body = "retry: 2\n"
        if "ok_first" in request.GET:
            body += "data: ok\n\n"

    return status, headers, body