cerebral-http-bugfix-1210
Version:
HTTP provider for Cerebral 2
58 lines (46 loc) • 1.72 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _utils = require('./utils');
var _HttpProviderError = require('./HttpProviderError');
var _HttpProviderError2 = _interopRequireDefault(_HttpProviderError);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
method: 'get',
baseUrl: '',
headers: {
'Content-Type': 'application/json; charset=UTF-8',
Accept: 'application/json'
},
onRequest: function onRequest(xhr, options) {
if (options.headers['Content-Type'].indexOf('application/x-www-form-urlencoded') >= 0) {
options.body = (0, _utils.urlEncode)(options.body);
} else if (options.headers['Content-Type'].indexOf('application/json') >= 0) {
options.body = JSON.stringify(options.body);
}
xhr.withCredentials = Boolean(options.withCredentials);
Object.keys(options.headers).forEach(function (key) {
xhr.setRequestHeader(key, options.headers[key]);
});
xhr.send(options.body);
},
onResponse: function onResponse(xhr, resolve, reject) {
var result = xhr.responseText;
if (result && (xhr.getResponseHeader('Content-Type') || '').indexOf('application/json') >= 0) {
result = JSON.parse(xhr.responseText);
}
var responseHeaders = (0, _utils.getAllResponseHeaders)(xhr);
if (xhr.status >= 200 && xhr.status < 300) {
resolve({
status: xhr.status,
headers: responseHeaders,
result: result,
isAborted: false
});
} else {
reject(new _HttpProviderError2.default(xhr.status, responseHeaders, result, xhr.responseText));
}
}
};
//# sourceMappingURL=DEFAULT_OPTIONS.js.map