axios-axios/lib/core/dispatchRequest.js
2015-01-23 02:11:57 -07:00

29 lines
766 B
JavaScript

'use strict';
var Promise = require('es6-promise').Promise;
/**
* Dispatch a request to the server using whichever adapter
* is supported by the current environment.
*
* @param {object} config The config that is to be used for the request
* @returns {Promise} The Promise to be fulfilled
*/
module.exports = function dispatchRequest(config) {
return new Promise(function (resolve, reject) {
try {
// For browsers use XHR adapter
if (typeof window !== 'undefined') {
require('../adapters/xhr')(resolve, reject, config);
}
// For node use HTTP adapter
else if (typeof process !== 'undefined') {
require('../adapters/http')(resolve, reject, config);
}
} catch (e) {
reject(e);
}
});
};