Class: Resource

Resource

new Resource()

一种资源,其中包括位置和我们检索或创建派生资源所需的任何其他参数。它还提供重试请求的功能。

Name Type Default Description
options.url String

资源的 url。

options.queryParameters Object 可选

对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值(如 {x})的Key/Value pairs。

options.headers Object {} 可选

将发送的其他 HTTP headers。

options.proxy DefaultProxy 可选

加载资源时使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回 true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应调用 retryCallback 的次数。

options.request Request 可选

将使用的请求对象。仅供内部使用。

Example
function refreshTokenRetryCallback(resource, error) {
  if (error.statusCode === 403) {
    // 403 status code means a new token should be generated
    return getNewAccessToken()
      .then(function(token) {
        resource.queryParameters.access_token = token;
        return true;
      })
      .otherwise(function() {
        return false;
      });
  }

  return false;
}

var resource = new Resource({
   url: 'http://server.com/path/to/resource.json',
   proxy: new DefaultProxy('/proxy/'),
   headers: {
     'X-My-Header': 'valueOfHeader'
   },
   queryParameters: {
     'access_token': '123-435-456-000'
   },
   retryCallback: refreshTokenRetryCallback,
   retryAttempts: 1
});

Members

(static, constant) DEFAULTResource

初始化为当前浏览器位置的资源实例。

(static, readonly) isBlobSupportedBoolean

如果支持 blobs,则返回 true。

readonly extensionString

资源的文件扩展名。

hasHeadersBoolean

如果资源有请求headers,则为 True。这等同于检查 headers 属性是否有任何keys。

headersObject

将随请求一起发送的附加 HTTP headers。

isBlobUriBoolean

如果资源指向 blob URI,则为 True。

isCrossOriginUrlBoolean

如果资源指向跨源 URL,则为 True。

isDataUriBoolean

如果资源指向数据 URI,则为 True。

proxyDefaultProxy

加载资源时使用的代理。

readonly queryParametersObject

附加到 url 的查询参数。

requestRequest

将使用的请求对象。仅供内部使用。

retryAttemptsNumber

在放弃之前应调用 retryCallback 的次数。

retryCallbackfunction

当对该资源的请求失败时调用的函数。如果返回 true 或解析为 true 的 Promise,请求将被重试。

readonly templateValuesObject

用于替换 url 中模板参数的key/value pairs。

urlString

指向资源的 url,已替换模板值,附加查询字符串,并由代理编码(如果已设置代理)。

Methods

static delete(){Promise.<Object>|undefined}

从URL创建资源并对其调用delete()。

Name Type Default Description
options.url String

资源的url。

options.data Object 可选

随资源一起发布的数据。

options.queryParameters Object 可选

一个对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值(如 {x})的Key/Value pairs。

options.headers Object {} 可选

将发送的附加 HTTP headers。

options.proxy DefaultProxy 可选

加载资源时要使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应该调用retryCallback的次数。

options.request Request 可选

将被使用的Request对象。仅供内部使用。

options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

static fetch(){Promise.<Object>|undefined}

从 URL 创建一个资源,并调用 fetch() 对其进行处理。

Name Type Default Description
options.url String

资源的 URL。

options.queryParameters Object 可选

对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值(如 {x})的Key/Value pairs。

options.headers Object {} 可选

将发送的附加 HTTP headers。

options.proxy DefaultProxy 可选

加载资源时使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回 true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应调用 retryCallback 的次数。

options.request Request 可选

将使用的请求对象。仅供内部使用。

options.responseType String 可选

响应类型。 它控制返回项目的类型。

options.overrideMimeType String 可选

覆盖服务器返回的 MIME 类型。

Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

static fetchArrayBuffer(){Promise.<ArrayBuffer>|undefined}

创建资源并调用 fetchArrayBuffer() 。

Name Type Default Description
options.url String

资源的 url。

options.queryParameters Object 可选

对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值(如 {x})的Key/Value pairs 。

options.headers Object {} 可选

将发送的其他 HTTP headers。

options.proxy DefaultProxy 可选

加载资源时使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回 true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应调用 retryCallback 的次数。

options.request Request 可选

将使用的请求对象。仅供内部使用。

Returns:
Type Description
Promise.<ArrayBuffer> | undefined 加载时将解析请求数据的Promise。如果 request.throttle 为 true 且请求的优先级不够高,则返回未定义。

static fetchBlob(){Promise.<Blob>|undefined}

创建资源并调用 fetchBlob() 。

Name Type Default Description
options.url String

资源的 URL。

options.queryParameters Object 可选

对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值(如 {x})的Key/Value pairs。

options.headers Object {} 可选

将发送的附加 HTTP headers。

options.proxy DefaultProxy 可选

加载资源时使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回 true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应调用 retryCallback 的次数。

options.request Request 可选

将使用的请求对象。仅供内部使用。

Returns:
Type Description
Promise.<Blob> | undefined 加载时将解析请求数据的Promise。如果 request.throttle 为 true 且请求的优先级不够高,则返回未定义。

static fetchImage(){Promise.<ImageBitmap>|Promise.<Image>|undefined}

创建一个资源并对其调用fetchImage()。

Name Type Default Description
options.url String

资源的url。

options.queryParameters Object 可选

一个对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值的Key/Value pairs(例如:{x})。

options.headers Object {} 可选

将要发送的附加HTTP headers。

options.proxy DefaultProxy 可选

加载资源时要使用的代理。

options.flipY Boolean false 可选

在获取和解码过程中是否垂直翻转影像。仅在请求影像并且浏览器支持createImageBitmap时适用。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应该调用retryCallback的次数。

options.request Request 可选

将被使用的Request对象。仅供内部使用。

options.preferBlob Boolean false 可选

如果为true,我们将通过blob加载影像。

options.preferImageBitmap Boolean false 可选

如果为true,影像将在获取期间解码,并返回ImageBitmap

Returns:
Type Description
Promise.<ImageBitmap> | Promise.<Image> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

static fetchJson(){Promise.<Object>|undefined}

创建一个资源并对其调用fetchJson()。

Name Type Default Description
options.url String

资源的url。

options.queryParameters Object 可选

一个对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值的Key/Value pairs (例如:{x})。

options.headers Object {} 可选

将要发送的附加HTTP headers。

options.proxy DefaultProxy 可选

加载资源时要使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应该调用retryCallback的次数。

options.request Request 可选

将被使用的Request对象。仅供内部使用。

Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

static fetchJsonp(){Promise.<Object>|undefined}

从URL创建一个资源并调用fetchJsonp()。

Name Type Default Description
options.url String

资源的url。

options.queryParameters Object 可选

一个对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值的Key/Value pairs(例如:{x})。

options.headers Object {} 可选

将要发送的附加HTTP headers。

options.proxy DefaultProxy 可选

加载资源时要使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应该调用retryCallback的次数。

options.request Request 可选

将被使用的Request对象。仅供内部使用。

options.callbackParameterName String 'callback' 可选

服务器期望的回调参数名称。

Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

static fetchText(){Promise.<String>|undefined}

创建一个资源并对其调用fetchText()。

Name Type Default Description
options.url String

资源的url。

options.queryParameters Object 可选

一个对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值的Key/Value pairs(例如:{x})。

options.headers Object {} 可选

将要发送的附加HTTP headers。

options.proxy DefaultProxy 可选

加载资源时要使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应该调用retryCallback的次数。

options.request Request 可选

将被使用的Request对象。仅供内部使用。

Returns:
Type Description
Promise.<String> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

static fetchXML(){Promise.<XMLDocument>|undefined}

创建一个资源并对其调用fetchXML()。

Name Type Default Description
options.url String

资源的url。

options.queryParameters Object 可选

一个对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值的Key/Value pairs (例如:{x})。

options.headers Object {} 可选

将要发送的附加HTTP headers。

options.proxy DefaultProxy 可选

加载资源时要使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应该调用retryCallback的次数。

options.request Request 可选

将被使用的Request对象。仅供内部使用。

Returns:
Type Description
Promise.<XMLDocument> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

static head(){Promise.<Object>|undefined}

从URL创建一个资源并调用head()。

Name Type Default Description
options.url String

资源的url。

options.queryParameters Object 可选

一个对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值的Key/Value pairs(例如:{x})。

options.headers Object {} 可选

将要发送的附加HTTP headers。

options.proxy DefaultProxy 可选

加载资源时要使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应该调用retryCallback的次数。

options.request Request 可选

将被使用的Request对象。仅供内部使用。

options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

static options(){Promise.<Object>|undefined}

从URL创建一个资源并对其调用options()。

Name Type Default Description
options.url String

资源的url。

options.queryParameters Object 可选

一个对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值的Key/Value pairs(例如:{x})。

options.headers Object {} 可选

将要发送的附加HTTP headers。

options.proxy DefaultProxy 可选

加载资源时要使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应该调用retryCallback的次数。

options.request Request 可选

将被使用的Request对象。仅供内部使用。

options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

static patch(){Promise.<Object>|undefined}

从URL创建一个资源并对其调用options()。

Name Type Default Description
options.url String

资源的url。

options.queryParameters Object 可选

一个对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值的Key/Value pairs(例如:{x})。

options.headers Object {} 可选

将要发送的附加HTTP headers。

options.proxy DefaultProxy 可选

加载资源时要使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应该调用retryCallback的次数。

options.request Request 可选

将被使用的Request对象。仅供内部使用。

options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

static post(){Promise.<Object>|undefined}

从URL创建一个资源并对其调用options()。

Name Type Default Description
options.url String

资源的url。

options.queryParameters Object 可选

一个对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值的Key/Value pairs(例如:{x})。

options.headers Object {} 可选

将要发送的附加HTTP headers。

options.proxy DefaultProxy 可选

加载资源时要使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应该调用retryCallback的次数。

options.request Request 可选

将被使用的Request对象。仅供内部使用。

options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

static put(){Promise.<Object>|undefined}

从URL创建一个资源并对其调用options()。

Name Type Default Description
options.url String

资源的url。

options.queryParameters Object 可选

一个对象,其中包含检索资源时将发送的查询参数。

options.templateValues Object 可选

用于替换模板值的Key/Value pairs(例如:{x})。

options.headers Object {} 可选

将要发送的附加HTTP headers。

options.proxy DefaultProxy 可选

加载资源时要使用的代理。

options.retryCallback Resource~RetryCallback 可选

当对该资源的请求失败时调用的函数。如果返回true,请求将被重试。

options.retryAttempts Number 0 可选

在放弃之前应该调用retryCallback的次数。

options.request Request 可选

将被使用的Request对象。仅供内部使用。

options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。

appendQueryParameters(params)

合并指定对象和现有查询参数。这样就可以一次性添加多个参数,而不是逐个添加到 queryParameters 属性中。

Name Type Description
params Object

查询参数。

clone(result){Resource}

复制资源实例。

Name Type Description
result Resource 可选

存储结果的对象。

Returns:
Type Description
Resource 修改后的结果参数,或一个新的资源实例(如果没有提供)。

delete(){Promise.<Object>|undefined}

异步删除给定的资源。返回一个将解析为的Promise加载后返回结果,如果资源加载失败则拒绝。 数据被加载使用XMLHttpRequest,这意味着为了向另一个源发出请求, 服务器必须启用跨域资源共享(CORS)headers。

Name Type Description
options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.headers Object 可选

与请求一起发送的附加HTTP headers(如果有的话)。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

See:
Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
resource.delete()
  .then(function(body) {
      // use the data
  }).otherwise(function(error) {
      // an error occurred
  });

fetch(){Promise.<Object>|undefined}

异步加载给定的资源。返回一个将解析为的Promise加载后返回结果,如果资源加载失败则拒绝。 数据被加载使用XMLHttpRequest,这意味着为了向另一个源发出请求,服务器必须启用跨域资源共享(CORS)headers。 建议您使用更具体的函数,例如。fetchJson, fetchBlob等。

Name Type Description
options.responseType String 可选

响应类型。 它控制返回项目的类型。

options.headers Object 可选

与请求一起发送的附加 HTTP headers信息(如果有)。

options.overrideMimeType String 可选

覆盖服务器返回的 MIME 类型。

See:
Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
resource.fetch()
  .then(function(body) {
      // use the data
  }).otherwise(function(error) {
      // an error occurred
  });

fetchArrayBuffer(){Promise.<ArrayBuffer>|undefined}

异步加载原始二进制数据资源。加载完成后会返回一个解析为 ArrayBuffer 的 promise,如果资源加载失败则会拒绝。数据是使用 XMLHttpRequest 加载的,这意味着要向其他来源发出请求,服务器必须启用跨来源资源共享(CORS)headers。

See:
Returns:
Type Description
Promise.<ArrayBuffer> | undefined 加载时将解析请求数据的Promise。如果 request.throttle 为 true 且请求的优先级不够高,则返回未定义。
Example
// load a single URL asynchronously
resource.fetchArrayBuffer().then(function(arrayBuffer) {
    // use the data
}).otherwise(function(error) {
    // an error occurred
});

fetchBlob(){Promise.<Blob>|undefined}

异步将给定资源加载为 Blob。 加载完成后,会返回一个解析为 Blob 的 promise,如果资源加载失败,则返回拒绝。 数据是使用 XMLHttpRequest 加载的,这意味着要向其他来源发出请求,服务器必须启用跨来源资源共享(CORS)headers 。

See:
Returns:
Type Description
Promise.<Blob> | undefined 加载时将解析请求数据的Promise。如果 request.throttle 为 true 且请求的优先级不够高,则返回未定义。
Example
// load a single URL asynchronously
resource.fetchBlob().then(function(blob) {
    // use the data
}).otherwise(function(error) {
    // an error occurred
});

fetchImage(){Promise.<ImageBitmap>|Promise.<Image>|undefined}

异步加载给定的影像资源。返回一个将解析为的Promise 如果preferImageBitmap为true并且浏览器支持createImageBitmap,则Image一旦加载,或者如果影像加载失败,则拒绝。

Name Type Default Description
options.preferBlob Boolean false 可选

如果为true,我们将通过blob加载影像。

options.preferImageBitmap Boolean false 可选

如果为true,影像将在获取期间解码,并返回ImageBitmap

options.flipY Boolean false 可选

如果为true,影像将在解码过程中垂直翻转。仅适用于浏览器支持createImageBitmap

See:
Returns:
Type Description
Promise.<ImageBitmap> | Promise.<Image> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
// load a single image asynchronously
resource.fetchImage().then(function(image) {
    // use the loaded image
}).otherwise(function(error) {
    // an error occurred
});

// load several images in parallel
when.all([resource1.fetchImage(), resource2.fetchImage()]).then(function(images) {
    // images is an array containing all the loaded images
});

fetchJson(){Promise.<Object>|undefined}

以JSON的形式异步加载给定的资源。返回一个将解析为的Promise一旦加载JSON对象,或者如果资源加载失败,则拒绝。 数据被加载使用XMLHttpRequest,这意味着为了向另一个源发出请求,服务器必须启用跨域资源共享(CORS)headers。 这个函数在请求头中添加'Accept: application/json,*/*;q=0.01',如果不是的话已经指定。

See:
Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
resource.fetchJson().then(function(jsonData) {
    // Do something with the JSON object
}).otherwise(function(error) {
    // an error occurred
});

fetchJsonp(callbackParameterName){Promise.<Object>|undefined}

使用JSONP请求资源。

Name Type Default Description
callbackParameterName String 'callback' 可选

服务器期望的回调参数名称。

See:
Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
// load a data asynchronously
resource.fetchJsonp().then(function(data) {
    // use the loaded data
}).otherwise(function(error) {
    // an error occurred
});

fetchText(){Promise.<String>|undefined}

异步地将给定的资源作为文本加载。 返回一个将解析为的Promise,一旦加载,就返回字符串,如果资源加载失败,则拒绝。 数据被加载使用XMLHttpRequest,这意味着为了向另一个源发出请求,服务器必须启用跨域资源共享(CORS)headers。

See:
Returns:
Type Description
Promise.<String> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
// load text from a URL, setting a custom header
var resource = new Resource({
  url: 'http://someUrl.com/someJson.txt',
  headers: {
    'X-Custom-Header' : 'some value'
  }
});
resource.fetchText().then(function(text) {
    // Do something with the text
}).otherwise(function(error) {
    // an error occurred
});

fetchXML(){Promise.<XMLDocument>|undefined}

异步地将给定资源加载为XML。返回一个将解析为的Promise一旦加载XML文档,或者如果资源加载失败,则拒绝。 数据是使用XMLHttpRequest加载的,这意味着为了向另一个源发出请求,服务器必须启用跨源资源共享(Cross-Origin Resource Sharing, CORS)headers。

See:
Returns:
Type Description
Promise.<XMLDocument> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
// load XML from a URL, setting a custom header
SuperMap3D.loadXML('http://someUrl.com/someXML.xml', {
  'X-Custom-Header' : 'some value'
}).then(function(document) {
    // Do something with the document
}).otherwise(function(error) {
    // an error occurred
});

getBaseUri(includeQuery){String}

返回资源的基本路径。

Name Type Default Description
includeQuery Boolean false 可选

是否在 uri 中包含查询字符串和片段

Returns:
Type Description
String 资源的基本 URI。

getDerivedResource(){Resource}

返回相对于当前实例的资源。除非在选项中重载,否则所有属性都与当前实例相同。

Name Type Default Description
options.url String 可选

相对于当前实例的 url 而解析的 url。

options.queryParameters Object 可选

包含查询参数的对象,这些参数将与当前实例的参数相结合。

options.templateValues Object 可选

用于替换模板值(如 {x})的Key/Value pairs。这些值将与当前实例的值合并。

options.headers Object {} 可选

将发送的其他 HTTP headers。

options.proxy DefaultProxy 可选

加载资源时使用的代理。

options.retryCallback Resource~RetryCallback 可选

加载资源失败时调用的函数。

options.retryAttempts Number 可选

在放弃之前应调用 retryCallback 的次数。

options.request Request 可选

将使用的请求对象。仅供内部使用。

options.preserveQueryParameters Boolean false 可选

如果为true,将保留当前资源和派生资源的所有查询参数。如果为false,派生参数将取代当前资源的参数。

Returns:
Type Description
Resource 从当前资源派生的资源。

getUrlComponent(query, proxy){String}

返回 url(可选)和查询字符串,并由代理处理。

Name Type Default Description
query Boolean false 可选

如果为 "true",则包含查询字符串。

proxy Boolean false 可选

如果为 "true",则会使用代理对象(如果已定义)处理 url。

Returns:
Type Description
String 包含所有请求组件的 URL。

异步删除给定的资源。返回一个将解析为的Promise加载后返回结果,如果资源加载失败则拒绝。 数据被加载使用XMLHttpRequest,这意味着为了向另一个源发出请求, 服务器必须启用跨域资源共享(CORS)headers。

Name Type Description
options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.headers Object 可选

与请求一起发送的附加HTTP headers(如果有的话)。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

See:
Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
resource.head()
  .then(function(headers) {
      // use the data
  }).otherwise(function(error) {
      // an error occurred
  });

options(){Promise.<Object>|undefined}

异步删除给定的资源。返回一个将解析为的Promise加载后返回结果,如果资源加载失败则拒绝。 数据被加载使用XMLHttpRequest,这意味着为了向另一个源发出请求, 服务器必须启用跨域资源共享(CORS)headers。

Name Type Description
options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.headers Object 可选

与请求一起发送的附加HTTP头(如果有的话)。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

See:
Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
resource.options()
  .then(function(headers) {
      // use the data
  }).otherwise(function(error) {
      // an error occurred
  });

patch(){Promise.<Object>|undefined}

异步删除给定的资源。返回一个将解析为的Promise加载后返回结果,如果资源加载失败则拒绝。 数据被加载使用XMLHttpRequest,这意味着为了向另一个源发出请求, 服务器必须启用跨域资源共享(CORS)headers。

Name Type Description
options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.headers Object 可选

与请求一起发送的附加HTTP头(如果有的话)。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

See:
Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
resource.patch(data)
  .then(function(result) {
      // use the result
  }).otherwise(function(error) {
      // an error occurred
  });

post(){Promise.<Object>|undefined}

异步删除给定的资源。返回一个将解析为的Promise加载后返回结果,如果资源加载失败则拒绝。 数据被加载使用XMLHttpRequest,这意味着为了向另一个源发出请求, 服务器必须启用跨域资源共享(CORS)headers。

Name Type Description
options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.headers Object 可选

与请求一起发送的附加HTTP头(如果有的话)。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

See:
Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
resource.post(data)
  .then(function(result) {
      // use the result
  }).otherwise(function(error) {
      // an error occurred
  });

put(){Promise.<Object>|undefined}

异步删除给定的资源。返回一个将解析为的Promise加载后返回结果,如果资源加载失败则拒绝。 数据被加载使用XMLHttpRequest,这意味着为了向另一个源发出请求, 服务器必须启用跨域资源共享(CORS)headers。

Name Type Description
options.responseType String 可选

响应的类型。这控制返回的项的类型。

options.headers Object 可选

与请求一起发送的附加HTTP头(如果有的话)。

options.overrideMimeType String 可选

覆盖服务器返回的MIME类型。

See:
Returns:
Type Description
Promise.<Object> | undefined 一个在加载时解析到所请求数据的Promise。如果请求,返回未定义。Throttle 为true,请求的优先级不够高。
Example
resource.put(data)
  .then(function(result) {
      // use the result
  }).otherwise(function(error) {
      // an error occurred
  });

setQueryParameters(params, useAsDefault)

合并指定对象和现有查询参数。这样就可以一次性添加多个参数,而不是一个一个地添加到 queryParameters 属性中。如果某个值已被设置,它将被新值取代。

Name Type Default Description
params Object

查询参数。

useAsDefault Boolean false 可选

如果为 true,参数将被用作默认值,因此只有在未定义时才会被设置。

setTemplateValues(template, useAsDefault)

合并指定对象和现有模板值。这样就可以一次性添加多个值,而不是一个一个地添加到 templateValues 属性中。如果某个值已被设置,它将成为一个数组,而新值将被添加。

Name Type Default Description
template Object

模板数值。

useAsDefault Boolean false 可选

如果为 true,这些值将被用作默认值,因此只有在未定义时才会被设置。

Type Definitions

RetryCallback(resource, error){Boolean|Promise.<Boolean>}

返回属性值的函数。

Name Type Description
resource Resource 可选

加载失败的资源。

error Error 可选

在加载资源期间发生的错误。

Returns:
Type Description
Boolean | Promise.<Boolean> 如果为true或Promise解析为true,则将重试资源。否则将返回失败。