access-control-preflight-sync-header-denied.htm (1058B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>Sync request denied at preflight because of non-CORS-safelisted header</title> 5 <script src="/resources/testharness.js"></script> 6 <script src="/resources/testharnessreport.js"></script> 7 <script src="/common/get-host-info.sub.js"></script> 8 <script src="/common/utils.js"></script> 9 </head> 10 <body> 11 <script type="text/javascript"> 12 const uuid = token(); 13 const url = get_host_info().HTTP_REMOTE_ORIGIN + 14 "/xhr/resources/access-control-preflight-denied.py?token=" + uuid; 15 16 test(() => { 17 let xhr = new XMLHttpRequest; 18 xhr.open("GET", url + "&command=reset", false); 19 xhr.send(); 20 21 xhr = new XMLHttpRequest; 22 xhr.open("GET", url + "&command=header", false); 23 xhr.setRequestHeader("x-test", "foo"); 24 25 assert_throws_dom("NetworkError", () => xhr.send()); 26 27 xhr = new XMLHttpRequest; 28 xhr.open("GET", url + "&command=complete", false); 29 xhr.send(); 30 assert_equals(xhr.responseText, "Request successfully blocked."); 31 }, "Sync request denied at preflight"); 32 </script> 33 </body> 34 </html>