access-control-response-with-exposed-headers.htm (1199B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>Test CORS response with 'Access-Control-Expose-Headers' 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 </head> 9 <body> 10 <script type="text/javascript"> 11 async_test((test) => { 12 const xhr = new XMLHttpRequest; 13 14 xhr.open("GET", get_host_info().HTTP_REMOTE_ORIGIN + 15 "/xhr/resources/pass.txt?pipe=" + 16 "header(Cache-Control,no-cache)|" + 17 "header(Access-Control-Max-Age,0)|" + 18 "header(Access-Control-Allow-Origin,*)|" + 19 "header(X-foo,BAR)|" + 20 "header(x-test,TEST)|" + 21 "header(Access-Control-Expose-Headers,x-Foo)|", 22 "header(Content-Type,text/html)"); 23 24 xhr.onerror = test.unreached_func("Unexpected error"); 25 26 xhr.onload = test.step_func_done(() => { 27 assert_equals(xhr.status, 200); 28 assert_equals(xhr.getResponseHeader("X-FOO"), "BAR"); 29 assert_equals(xhr.getResponseHeader("x-foo"), "BAR"); 30 assert_equals(xhr.getResponseHeader("x-test"), null); 31 assert_equals(xhr.responseText, "PASS\n"); 32 }); 33 34 xhr.send(); 35 }); 36 </script> 37 </body> 38 </html>