tor-browser

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

cross-origin-cookie-set.html (1557B)


      1 <!DOCTYPE html>
      2 <title>Include credentials in cross-origin websocket requests</title>
      3 <meta name=author title="Domenico Rizzo" href="mailto:domenico.rizzo@gmail.com">
      4 
      5 <script src=/resources/testharness.js></script>
      6 <script src=/resources/testharnessreport.js></script>
      7 <script src="/websockets/constants.sub.js"></script>
      8 
      9 <h1>WebSocket - Set Cross-origin cookie</h1>
     10 <div id=log></div>
     11 <script>
     12    var resp_test = async_test('Cookie should be set')
     13 
     14    resp_test.step(function() {
     15        var ws = new WebSocket(SCHEME_CROSSDOMAIN_PORT + "/set-cookie?cookie_test");
     16        ws.onerror = resp_test.step_func_done(function () {
     17            assert_unreached("ws no error");
     18        });
     19        ws.onclose = resp_test.step_func_done(function () {
     20            assert_unreached("'close' should not fire before 'open'.");
     21        });
     22        ws.onopen = resp_test.step_func(function (e) {
     23            ws.onclose = null;
     24            ws.close();
     25 
     26            var ws2 = new WebSocket(SCHEME_CROSSDOMAIN_PORT + "/echo-cookie");
     27            ws2.onerror = resp_test.step_func_done(function () {
     28                assert_unreached("ws2 no error");
     29            });
     30            ws2.onclose = resp_test.step_func_done(function () {
     31                assert_unreached("'close' should not fire before 'open'.");
     32            });
     33            ws2.onmessage = resp_test.step_func_done(function (e) {
     34                ws2.onclose = null;
     35                ws2.close();
     36                assert_true(/ws_test_cookie_test=test/.test(e.data));
     37            });
     38        });
     39    })
     40 </script>