cs-mpx-dataservice
Version:
MPX Dataservices
32 lines (29 loc) • 858 B
JavaScript
/**
* Created by paul.rangel on 4/27/15.
*/
var q = require("q");
var jsonp = require("jsonp");
var querystring = require("querystring");
var GenerateError = require("./GenerateError");
module.exports = function (url, params) {
var deferred = q.defer();
url += (url.indexOf('?') === -1)? "?" : "";
url += querystring.stringify(params);
var cancel = jsonp(url, { timeout: 9000}, function(err, res) {
if(res) {
if (res.isException) {
deferred.reject(GenerateError(res, url))
} else {
deferred.resolve(res);
}
}
if(err) {
var msg = "Request: "+url+" failed with: ";
if(err && err.message) {
msg += err.message;
}
deferred.reject(msg);
}
});
return deferred.promise;
};