BMResource

封装BM服务器资源访问的Resource实例。此对象通常不直接实例化,请使用BMResource.fromId
new BMResource(endpoint, endpointResource)
Parameters:
endpoint (Object) BM服务器资源终结点服务的结果。
endpointResource (Resource) 用于检索终结点的资源。
See:

Extends

Members

(readonly) credits : Array.<Credit>

获取资源属性所需的信用。

(readonly) extension : String

资源的文件扩展名。
Inherited From:

hasHeaders : Boolean

如果资源具有请求头,则为true。这相当于检查headers属性是否有任何键。
Inherited From:

headers : Object

将随请求一起发送的其他HTTP头。
Inherited From:

isBlobUri : Boolean

如果资源引用blob uri,则为true。
Inherited From:

isCrossOriginUrl : Boolean

如果资源引用跨源URL,则为true。
Inherited From:

isDataUri : Boolean

如果资源引用数据URI,则为true。
Inherited From:

proxy : DefaultProxy

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

(readonly) queryParameters : Object

附加到URL的查询参数。
Inherited From:

request : Request

将要使用的请求对象。仅供内部使用。
Inherited From:

retryAttempts : Number

放弃前应调用RetryCallback的次数。
Inherited From:

retryCallback : function

当请求此资源失败时调用的函数。如果返回“真”或解析为“真”的承诺,将重试请求。
Inherited From:

(readonly) templateValues : Object

用于替换URL中模板参数的键/值对。
Inherited From:

url : String

替换模板值、追加查询字符串并由代理(如果设置了)编码的资源的URL。
Inherited From:

Methods

(static) fromId(assetId) → {Promise.<BMResource>}
异步创建实例。
Parameters:
assetId (Number) BM服务器mapid或terrainid。
appendForwardSlash()
向URL追加正斜杠。
Inherited From:
appendQueryParameters(params)
组合指定的对象和现有查询参数。这允许您一次添加多个参数,而不是一次将它们添加到QueryParameters属性中。
Parameters:
params (Object) 查询参数
Inherited From:
clone(result) → {Resource}
复制资源实例。
Parameters:
result (Resource) 存储结果的对象。
Inherited From:
delete(options) → {Promise.<Object>|undefined}
异步删除给定的资源。返回一个承诺,该承诺将在加载后解析为结果,或者在资源加载失败时拒绝。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。
Parameters:
options (Object)
Name Description
options.responseType
String
响应类型。这控制返回的项的类型。
options.headers
Object
与请求一起发送的附加HTTP头(如果有)。
options.overrideMimeType
String
重写服务器返回的mime类型。
Example
resource.delete()
  .then(function(body) {
      // use the data
  }).otherwise(function(error) {
      // an error occurred
  });
Inherited From:
See:
fetch(options) → {Promise.<Object>|undefined}
异步加载给定的资源。返回一个承诺,该承诺将在加载后解析为结果,或者在资源加载失败时拒绝。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。建议您使用更具体的函数,如fetchjson、fetchblob等。
Parameters:
options (Object)
Name Description
options.responseType
String
响应类型。这控制返回的项的类型。
options.headers
Object
与请求一起发送的附加HTTP头(如果有)。
options.overrideMimeType
String
重写服务器返回的mime类型。
Example
resource.fetch()
  .then(function(body) {
      // use the data
  }).otherwise(function(error) {
      // an error occurred
  });
Inherited From:
See:
fetchArrayBuffer() → {Promise.<ArrayBuffer>|undefined}
异步加载资源作为原始二进制数据。返回将在加载后解析为ArrayBuffer的承诺,或者在资源加载失败时拒绝该承诺。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。
Example
// load a single URL asynchronously
resource.fetchArrayBuffer().then(function(arrayBuffer) {
    // use the data
}).otherwise(function(error) {
    // an error occurred
});
Inherited From:
See:
fetchBlob() → {Promise.<Blob>|undefined}
以blob的形式异步加载给定的资源。返回一个承诺,该承诺将在加载后解析为blob,或者在资源加载失败时拒绝。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。
Example
// load a single URL asynchronously
resource.fetchBlob().then(function(blob) {
    // use the data
}).otherwise(function(error) {
    // an error occurred
});
Inherited From:
See:
fetchImage(options) → {Promise.<ImageBitmap>|Promise.<Image>|undefined}
异步加载给定的映像资源。返回一个承诺,如果preferImageBitmap为真且浏览器支持createImageBitmap或加载后的Image将解析为ImageBitmap,如果图像加载失败则拒绝。
Parameters:
options (Object) 具有以下属性的对象。
Name Description
options.preferBlob
Boolean
default false
如果为真,我们将通过blob加载图像。
options.preferImageBitmap
Boolean
default false
如果为真,则图像将在提取期间解码,并返回ImageBitmap
options.flipY
Boolean
default false
如果为真,则图像将在解码过程中垂直翻转。仅当浏览器支持createImageBitmap时适用。
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
});
Inherited From:
See:
fetchJson() → {Promise.<Object>|undefined}
以JSON的形式异步加载给定的资源。返回一个承诺,该承诺将在加载后解析为JSON对象,或者在资源加载失败时拒绝。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。此函数将“accept:application/json,*;/;*;;q=0.01”添加到请求头(如果尚未指定)。
Example
resource.fetchJson().then(function(jsonData) {
    // Do something with the JSON object
}).otherwise(function(error) {
    // an error occurred
});
Inherited From:
See:
fetchJsonp(callbackParameterName) → {Promise.<Object>|undefined}
使用JSONP请求资源。
Parameters:
callbackParameterName (String) (default 'callback') 服务器需要的回调参数名。
Example
// load a data asynchronously
resource.fetchJsonp().then(function(data) {
    // use the loaded data
}).otherwise(function(error) {
    // an error occurred
});
Inherited From:
See:
fetchText() → {Promise.<String>|undefined}
以文本形式异步加载给定资源。返回将在加载后解析为字符串的承诺,或者在资源加载失败时拒绝该承诺。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。
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
});
Inherited From:
See:
fetchXML() → {Promise.<XMLDocument>|undefined}
以XML的形式异步加载给定的资源。返回一个承诺,该承诺将在加载后解析为XML文档,或者在资源加载失败时拒绝。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。
Example
// load XML from a URL, setting a custom header
bmgl.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
});
Inherited From:
See:
getBaseUri(includeQuery) → {String}
返回资源的基本路径。
Parameters:
includeQuery (Boolean) (default false) 是否包含来自URI的查询字符串和片段
Inherited From:
getDerivedResource(options) → {Resource}
返回相对于当前实例的资源。除非在选项中被重写,否则所有属性与当前实例保持相同。
Parameters:
options (Object) 具有以下属性的对象
Name Description
options.url
String
将相对于当前实例的URL解析的URL。
options.queryParameters
Object
包含将与当前实例的查询参数组合的查询参数的对象。
options.templateValues
Object
用于替换模板值的键/值对(例如{x})。这些将与当前实例的合并。
options.headers
Object
default {}
将发送的其他HTTP头。
options.proxy
DefaultProxy
加载资源时要使用的代理。
options.retryCallback
Resource~RetryCallback
加载资源失败时要调用的函数。
options.retryAttempts
Number
放弃前应调用RetryCallback的次数。
options.request
Request
将要使用的请求对象。仅供内部使用。
options.preserveQueryParameters
Boolean
default false
如果为true,则将保留当前资源和派生资源中的所有查询参数。如果为false,派生参数将替换当前资源的参数。
Inherited From:
getUrlComponent(query, proxy) → {String}
返回由代理处理的、查询字符串可选的URL。
Parameters:
query (Boolean) (default false) 如果为true,则包含查询字符串。
proxy (Boolean) (default false) 如果为true,则在定义代理对象时处理该URL。
Inherited From:
head(options) → {Promise.<Object>|undefined}
异步获取给定资源的头。返回一个承诺,该承诺将在加载后解析为结果,或者在资源加载失败时拒绝。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。
Parameters:
options (Object)
Name Description
options.responseType
String
响应类型。这控制返回的项的类型。
options.headers
Object
与请求一起发送的附加HTTP头(如果有)。
options.overrideMimeType
String
重写服务器返回的mime类型。
Example
resource.head()
  .then(function(headers) {
      // use the data
  }).otherwise(function(error) {
      // an error occurred
  });
Inherited From:
See:
options(options) → {Promise.<Object>|undefined}
异步获取给定资源的选项。返回一个承诺,该承诺将在加载后解析为结果,或者在资源加载失败时拒绝。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。
Parameters:
options (Object)
Name Description
options.responseType
String
响应类型。这控制返回的项的类型。
options.headers
Object
与请求一起发送的附加HTTP头(如果有)。
options.overrideMimeType
String
重写服务器返回的mime类型。
Example
resource.options()
  .then(function(headers) {
      // use the data
  }).otherwise(function(error) {
      // an error occurred
  });
Inherited From:
See:
patch(data, options) → {Promise.<Object>|undefined}
异步地将数据修补到给定的资源。返回一个承诺,该承诺将在加载后解析为结果,或者在资源加载失败时拒绝。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。
Parameters:
data (Object) 与资源一起发布的数据。
options (Object)
Name Description
options.responseType
String
响应类型。这控制返回的项的类型。
options.headers
Object
与请求一起发送的附加HTTP头(如果有)。
options.overrideMimeType
String
重写服务器返回的mime类型。
Example
resource.patch(data)
  .then(function(result) {
      // use the result
  }).otherwise(function(error) {
      // an error occurred
  });
Inherited From:
See:
post(data, options) → {Promise.<Object>|undefined}
异步地将数据发布到给定的资源。返回一个承诺,该承诺将在加载后解析为结果,或者在资源加载失败时拒绝。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。
Parameters:
data (Object) 与资源一起发布的数据。
options (Object)
Name Description
options.data
Object
与资源一起发布的数据。
options.responseType
String
响应类型。这控制返回的项的类型。
options.headers
Object
与请求一起发送的附加HTTP头(如果有)。
options.overrideMimeType
String
重写服务器返回的mime类型。
Example
resource.post(data)
  .then(function(result) {
      // use the result
  }).otherwise(function(error) {
      // an error occurred
  });
Inherited From:
See:
put(data, options) → {Promise.<Object>|undefined}
异步地将数据放入给定的资源。返回一个承诺,该承诺将在加载后解析为结果,或者在资源加载失败时拒绝。使用xmlhttpRequest加载数据,这意味着为了向另一个来源发出请求,服务器必须启用跨来源资源共享(cors)头。
Parameters:
data (Object) 与资源一起发布的数据。
options (Object)
Name Description
options.responseType
String
响应类型。这控制返回的项的类型。
options.headers
Object
与请求一起发送的附加HTTP头(如果有)。
options.overrideMimeType
String
重写服务器返回的mime类型。
Example
resource.put(data)
  .then(function(result) {
      // use the result
  }).otherwise(function(error) {
      // an error occurred
  });
Inherited From:
See:
setQueryParameters(params, useAsDefault)
组合指定的对象和现有查询参数。这允许您一次添加多个参数,而不是一次将它们添加到QueryParameters属性中。如果已经设置了一个值,它将被替换为新值。
Parameters:
params (Object) 查询参数
useAsDefault (Boolean) (default false) 如果为真,参数将用作默认值,因此只有在未定义参数时才会设置这些参数。
Inherited From:
setTemplateValues(template, useAsDefault)
组合指定的对象和现有模板值。这允许您一次添加多个值,而不是一次将它们添加到TemplateValues属性。如果已经设置了一个值,它将成为一个数组,并附加新的值。
Parameters:
template (Object) 模板值
useAsDefault (Boolean) (default false) 如果为真,这些值将用作默认值,因此只有在未定义的情况下才会设置这些值。
Inherited From: