Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/testing/web-platform/tests/cors/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 4 kB image not shown  

Quelle  status-async.htm   Sprache: HTML

 
 products/Sources/formale Sprachen/C/Firefox/testing/web-platform/tests/cors/status-async.htm


<!DOCTYPE html>
<meta charset=utf-8>
<title>CORS - status</title>
<meta name=author title="Odin Hørthe Omdal" href="mailto:odiho@opera.com">
<meta name=timeout content=long>

<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=support.js?pipe=sub></script>

<h1>Status returned</h1>

<div id=log></div>
<script>

function statusRequest(method, code, text, content, type) {
    async_test("Status on " + method + " " + code)
    .step(function() {
        var client = new XMLHttpRequest()
        client.open(method, CROSSDOMAIN + "resources/status.py?code="
            + code + "&text=" + text + "&content=" + content + "&type=" + type, true)
        client.onreadystatechange = this.step_func(function() {
            if (client.readyState != client.DONE)
                return

            assert_equals(client.status, code'response status')
            assert_equals(client.statusText, text, 'response status text')
            assert_equals(client.getResponseHeader("X-Request-Method"), method, 'method')
            if(method != "HEAD") {
                if(type == "text/xml") {
                    assert_equals(client.responseXML.documentElement.localName,
                                "x"'responseXML')
                }
                assert_equals(client.response, content, 'response content')
            }
            this.done()
        })

        client.send(null)
    })
}

  /*            method     code text  content        type */
  statusRequest("GET",     200, 'OK''Not today.',  '')
  statusRequest("GET",     201, 'OK/Created''Not today 01.',  '')
  statusRequest("GET",     202, 'OK/Accepted''Not today 02.',  '')
  statusRequest("GET",     203, 'OK/Non-Authoritative Information''Not today 03.',  '')
  statusRequest("GET",     204, 'OK/No Content''',  '') // specifically no-content
  statusRequest("GET",     205, 'OK/Reset Content''',  '') // specifically no-content
  statusRequest("GET",     206, 'OK/Partial Content''Not today 06.',  '')
  statusRequest("GET",     209, 'OK''Not today 09.',  '')
  statusRequest("GET",     299, 'OK''Not today 99.',  '')
  statusRequest("POST",    200, 'OK''402<\/x>''text/xml')
  statusRequest("HEAD",    200, 'OK''Nice!',       'text/doesnotmatter')
  statusRequest("PUT",     200, 'OK''400',         'text/plain')
  statusRequest("CHICKEN", 200, 'OK''bah',         '')


function statusRequestFail(method, code, expect_code, nonsimple) {
    if (expect_code === undefined)
        expect_code = code

    async_test("Status on " + method + " " + code + (nonsimple?' (nonsimple)':''))
    .step(function() {
        var client = new XMLHttpRequest()

        client.open(method, CROSSDOMAIN + "resources/status.py?code="
          + code + '&headers=x-nonsimple&text=OHAI', true)

        if (nonsimple)
            client.setRequestHeader('x-nonsimple', true)

        client.onreadystatechange = this.step_func(function() {
            if (client.readyState < client.HEADERS_RECEIVED)
                return
            assert_equals(client.response, """response data")
            assert_equals(client.status, expect_code, "response status")
            /* Response code 200 forces webserver to send OK(?) */
            if(expect_code == 200)
                assert_equals(client.statusText, "OK""response statusText")
            else
                assert_equals(client.statusText, (expect_code == 0 ? "" : "OHAI"), "response statusText")
            if (client.readyState == client.DONE)
                this.done()
        })

        client.onerror = this.step_func(function(e) {
            assert_unreached("Got error event.")
        })

        client.send()
    })
}

  /*                                 expect
                    method     code  status */
  statusRequestFail("GET",     400)
  statusRequestFail("HEAD",    401)
  statusRequestFail("POST",    404)
  statusRequestFail("POST",    500)

  /* Preflight response status is not 200, so the algorithm set status to 0. */
  statusRequestFail("PUT",     699,  0)
  statusRequestFail("CHICKEN", 501,  0)

  /*                                    "forced"
                                        preflight */
  statusRequestFail("GET",     400,  0, true)
  statusRequestFail("HEAD",    401,  0, true)
  statusRequestFail("POST",    404,  0, true)
  statusRequestFail("PUT",     699,  0, true)
  statusRequestFail("CHICKEN", 501,  0, true)

</script>

Messung V0.5
C=92 H=90 G=90

¤ Dauer der Verarbeitung: 0.3 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.