XMLHttpRequest

使用 XMLHttpRequest (XHR) 对象可以与服务器交互。您可以从 URL 获取数据,而无需让整个的页面刷新。这使得 Web 页面可以只更新页面的局部,而不影响用户的操作.尽管名称如此,XMLHttpRequest 可以用于获取任何类型的数据,而不仅仅是 XML,它还支持 HTTP 以外的协议(包括文件和 ftp )。

OPPO 小游戏按照 web 标准实现了 XMLHttpRequest ,但有一定删减,以下是已经实现的接口和属性:

XMLHttpRequest

构造函数初始化一个 XMLHttpRequest 对象。必须在所有其他方法被调用前调用构造函数。

属性

readyState

返回一个 unsigned short 即无符号短整型,请求的状态码, 合法的状态码可见 mdn 文档

status

返回 unsigned short 即无符号短整型请求响应状态, 是标准的 http 状态码

statusText

返回一个 DOMString,其中包含HTTP服务器返回的响应状态。与 XMLHTTPRequest.status 不同的是,它包括响应状态的整个文本(例如,“200 OK”)。

response

返回 ArrayBuffer、text、json,具体是哪种类型取决于 XMLHttpRequest.responseType 的值。其中包含响应体 body mdn 详细描述

responseType

定义响应类型的枚举值 mdn 详细描述。 目前只支持其中3种,"json", "text", "arraybuffer"。

responseText

返回一个 DOMString,该 DOMString 包含对请求的响应,如果请求未成功或尚未发送,则返回 null。

timeout

unsigned long 即无符号长整型,表示该请求的最大请求时间(毫秒),超过该时间请求会自动结束。

方法

XMLHttpRequest.abort()

如果请求已经被发送,则立刻中止请求.

XMLHttpRequest.open(method, url)

初始化一个请求。该方法只能 JavaScript 代码中使用,若要在 native code 中初始化请求,请使用 openRequest()。

参数

method

要使用的HTTP方法,比如「GET」、「POST」、「PUT」、「DELETE」、等。对于非 HTTP(S) URL被忽略。

url

一个DOMString表示要向其发送请求的URL。

XMLHttpRequest.send()

发送请求。如果请求是异步的(默认),那么该方法将在请求发送后立即返回。

语法

void send();
void send(ArrayBuffer data);
void send(ArrayBufferView data);
void send(Blob data);
void send(Document data);
void send(DOMString? data);

XMLHttpRequest.setRequestHeader(header, value)

设置 HTTP 请求头的值。您必须在 open() 之后、send() 之前调用 setRequestHeader() 这个方法。

参数

header

属性的名称。

value

属性的值。

XMLHttpRequest.getResponseHeader(name)

返回包含指定响应头的字符串,如果响应尚未收到或响应中不存在该报头,则返回 null。

参数

name

ByteString 表示要返回文本值的标题的名称。

返回值

表示标头文本值的ByteString;如果响应尚未收到,或者响应中不存在标头,则返回 null。

XMLHttpRequest.getAllResponseHeaders()

以字符串的形式返回所有用 CRLF 分隔的响应头,如果没有收到响应,则返回 null。

© 2020 OPPO. All rights reserved.

results matching ""

    No results matching ""