| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // http://fetch.spec.whatwg.org/#response-class |
| |
| enum ResponseType { "basic", "cors", "default", "error", "opaque", "opaqueredirect" }; |
| |
| [ |
| ActiveScriptWrappable, |
| // TODO(yhirano): We use "any" for body because the IDL processor doesn't |
| // recognize ReadableStream implemented with V8 extras. Fix it. |
| Constructor(optional any body, optional Dictionary responseInitDict), |
| ConstructorCallWith=ScriptState, |
| DependentLifetime, |
| Exposed=(Window,Worker), |
| RaisesException=Constructor, |
| ] interface Response { |
| [CallWith=ExecutionContext] static Response error(); |
| [CallWith=ExecutionContext, RaisesException] static Response redirect(USVString url, optional unsigned short status = 302); |
| readonly attribute ResponseType type; |
| readonly attribute USVString url; |
| readonly attribute unsigned short status; |
| readonly attribute boolean ok; |
| readonly attribute ByteString statusText; |
| readonly attribute Headers headers; |
| |
| [RaisesException] Response clone(); |
| |
| [ImplementedAs=bodyWithUseCounter] readonly attribute ReadableByteStream body; |
| [RuntimeEnabled=ResponseBodyWithV8ExtraStream, CallWith=ScriptState] any v8ExtraStreamBody(); |
| }; |
| |
| Response implements Body; |