| /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ |
| /* This Source Code Form is subject to the terms of the Mozilla Public |
| * License, v. 2.0. If a copy of the MPL was not distributed with this file, |
| * You can obtain one at http://mozilla.org/MPL/2.0/. |
| * |
| * The origin of this IDL file is |
| * https://xhr.spec.whatwg.org/#interface-xmlhttprequest |
| * |
| * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C |
| * liability, trademark and document use rules apply. |
| */ |
| |
| // invalid widl |
| // interface InputStream; |
| // interface IID; |
| |
| enum XMLHttpRequestResponseType { |
| "", |
| "arraybuffer", |
| "blob", |
| "document", |
| "json", |
| "text", |
| }; |
| |
| [Constructor(), |
| // There are apparently callers, specifically CoffeeScript, who do |
| // things like this: |
| // c = new(window.ActiveXObject || XMLHttpRequest)("Microsoft.XMLHTTP") |
| // To handle that, we need a constructor that takes a string. |
| Constructor(DOMString ignored), |
| Exposed=(Window,DedicatedWorker,SharedWorker)] |
| interface XMLHttpRequest : XMLHttpRequestEventTarget { |
| // event handler |
| attribute EventHandler onreadystatechange; |
| |
| // states |
| const unsigned short UNSENT = 0; |
| const unsigned short OPENED = 1; |
| const unsigned short HEADERS_RECEIVED = 2; |
| const unsigned short LOADING = 3; |
| const unsigned short DONE = 4; |
| |
| readonly attribute unsigned short readyState; |
| |
| // request |
| [Throws] |
| undefined open(ByteString method, USVString url); |
| [Throws] |
| undefined open(ByteString method, USVString url, boolean async, |
| optional USVString? user=null, optional USVString? password=null); |
| [Throws] |
| undefined setRequestHeader(ByteString header, ByteString value); |
| |
| [SetterThrows] |
| attribute unsigned long timeout; |
| |
| [SetterThrows] |
| attribute boolean withCredentials; |
| |
| [Throws] |
| readonly attribute XMLHttpRequestUpload upload; |
| |
| [Throws] |
| undefined send(optional (Document or BodyInit)? body = null); |
| |
| [Throws] |
| undefined abort(); |
| |
| // response |
| readonly attribute USVString responseURL; |
| |
| [Throws] |
| readonly attribute unsigned short status; |
| |
| [Throws] |
| readonly attribute ByteString statusText; |
| |
| [Throws] |
| ByteString? getResponseHeader(ByteString header); |
| |
| [Throws] |
| ByteString getAllResponseHeaders(); |
| |
| [Throws] |
| undefined overrideMimeType(DOMString mime); |
| |
| [SetterThrows] |
| attribute XMLHttpRequestResponseType responseType; |
| [Throws] |
| readonly attribute any response; |
| [Cached, Pure, Throws] |
| readonly attribute USVString? responseText; |
| |
| [Throws, Exposed=Window] |
| readonly attribute Document? responseXML; |
| }; |