<!DOCTYPE html> <html> <title>Service Workers: Response Objects</title> <head> <link rel="help" href="https://w3c.github.io/ServiceWorker/#response-objects"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <script src=/resources/WebIDLParser.js></script> <script src=/resources/idlharness.js></script> </head> <body> <!-- `Response` objects model HTTP responses. --> <script type=text/plain id="idl_0"> [Constructor] interface AbstractResponse { }; interface OpaqueResponse : AbstractResponse { readonly attribute unsigned short status; readonly attribute ByteString statusText; // Returns a filtered list of headers. See prose for details. readonly attribute HeaderMap headers; // No setter for headers readonly attribute DOMString url; }; interface CORSResponse : Response { readonly attribute HeaderMap headers; }; [Constructor(optional ResponseInit responseInitDict)] interface Response : AbstractResponse { attribute unsigned short status; attribute ByteString statusText; readonly attribute HeaderMap headers; attribute DOMString url; Promise<Blob> toBlob(); }; dictionary ResponseInit { unsigned short status = 200; ByteString statusText = "OK"; HeaderMap headers; }; </pre> <script type=text/plain id="untested_idls"> interface HeaderMap {}; interface Blob {}; </pre> <script> var idl_array = new IdlArray(); idl_array.add_untested_idls(document.getElementById("untested_idls").textContent); idl_array.add_idls(document.getElementById("idl_0").textContent); idl_array.add_objects({ AbstractResponse: ["throw new Error ('No object defined for the AbstractResponse interface')"], OpaqueResponse: ["throw new Error ('No object defined for the OpaqueResponse interface')"], CORSResponse: ["throw new Error ('No object defined for the CORSResponse interface')"], Response: ["throw new Error ('No object defined for the Response interface')"], ResponseInit: ["throw new Error ('No object defined for the ResponseInit dictionary')"] }); idl_array.test(); </script> </body> </html>