| <!doctype html> |
| <html> |
| <head> |
| <title>XMLHttpRequest: setRequestHeader() - headers that differ in case</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <link rel="help" href="https://xhr.spec.whatwg.org/#the-setrequestheader()-method"> |
| </head> |
| <body> |
| <div id="log"></div> |
| <script> |
| test(() => { |
| const client = new XMLHttpRequest(); |
| client.open("POST", "resources/inspect-headers.py?filter_value=t1, t2, t3", false); |
| client.setRequestHeader("x-test", "t1"); |
| client.setRequestHeader("X-TEST", "t2"); |
| client.setRequestHeader("X-teST", "t3"); |
| client.send(null); |
| assert_equals(client.responseText, "x-test,"); |
| }); |
| |
| test(() => { |
| const client = new XMLHttpRequest(); |
| client.open("GET", "resources/echo-headers.py", false); |
| client.setRequestHeader("THIS-IS-A-TEST", "1"); |
| client.setRequestHeader("THIS-is-A-test", "2"); |
| client.setRequestHeader("content-TYPE", "x/x"); |
| client.send(); |
| const contentTypeHeader = client.responseText.match(/content-TYPE/gi); |
| const thisIsATestHeader = client.responseText.match(/THIS-IS-A-TEST: 1, 2/gi); |
| assert_array_equals(contentTypeHeader, ["content-TYPE"]); |
| assert_array_equals(thisIsATestHeader, ["THIS-IS-A-TEST: 1, 2"]); |
| }); |
| </script> |
| </body> |
| </html> |