tns-core-modules
Version:
Telerik NativeScript Core Modules
71 lines (70 loc) • 2.25 kB
JavaScript
var httpRequest = require("http/http-request");
global.moduleMerge(httpRequest, exports);
function getString(arg) {
return new Promise(function (resolve, reject) {
httpRequest.request(typeof arg === "string" ? { url: arg, method: "GET" } : arg)
.then(function (r) {
try {
var str = r.content.toString();
resolve(str);
}
catch (e) {
reject(e);
}
}, function (e) { return reject(e); });
});
}
exports.getString = getString;
function getJSON(arg) {
return new Promise(function (resolve, reject) {
httpRequest.request(typeof arg === "string" ? { url: arg, method: "GET" } : arg)
.then(function (r) {
try {
var json = r.content.toJSON();
resolve(json);
}
catch (e) {
reject(e);
}
}, function (e) { return reject(e); });
});
}
exports.getJSON = getJSON;
function getImage(arg) {
return new Promise(function (resolve, reject) {
httpRequest.request(typeof arg === "string" ? { url: arg, method: "GET" } : arg)
.then(function (r) {
r.content.toImage().then(function (source) { return resolve(source); }, function (e) { return reject(e); });
}, function (e) { return reject(e); });
});
}
exports.getImage = getImage;
function getFile(arg, destinationFilePath) {
return new Promise(function (resolve, reject) {
httpRequest.request(typeof arg === "string" ? { url: arg, method: "GET" } : arg)
.then(function (r) {
try {
var file = r.content.toFile(destinationFilePath);
resolve(file);
}
catch (e) {
reject(e);
}
}, function (e) { return reject(e); });
});
}
exports.getFile = getFile;
function addHeader(headers, key, value) {
if (!headers[key]) {
headers[key] = value;
}
else if (Array.isArray(headers[key])) {
headers[key].push(value);
}
else {
var values = [headers[key]];
values.push(value);
headers[key] = values;
}
}
exports.addHeader = addHeader;