/
loadText.js
44 lines (42 loc) · 1.69 KB
/
loadText.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
define([
'./loadWithXhr'
], function(
loadWithXhr) {
'use strict';
/**
* Asynchronously loads the given URL as text. Returns a promise that will resolve to
* a String once loaded, or reject if the URL failed to load. The data is loaded
* using XMLHttpRequest, which means that in order to make requests to another origin,
* the server must have Cross-Origin Resource Sharing (CORS) headers enabled.
*
* @exports loadText
*
* @param {String} url The URL to request.
* @param {Object} [headers] HTTP headers to send with the request.
* @param {Request} [request] The request object. Intended for internal use only.
* @returns {Promise.<String>|undefined} a promise that will resolve to the requested data when loaded. Returns undefined if <code>request.throttle</code> is true and the request does not have high enough priority.
*
*
* @example
* // load text from a URL, setting a custom header
* Cesium.loadText('http://someUrl.com/someJson.txt', {
* 'X-Custom-Header' : 'some value'
* }).then(function(text) {
* // Do something with the text
* }).otherwise(function(error) {
* // an error occurred
* });
*
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest|XMLHttpRequest}
* @see {@link http://www.w3.org/TR/cors/|Cross-Origin Resource Sharing}
* @see {@link http://wiki.commonjs.org/wiki/Promises/A|CommonJS Promises/A}
*/
function loadText(url, headers, request) {
return loadWithXhr({
url : url,
headers : headers,
request : request
});
}
return loadText;
});