| 'use strict'; |
|
|
| import transformData from './transformData.js'; |
| import isCancel from '../cancel/isCancel.js'; |
| import defaults from '../defaults/index.js'; |
| import CanceledError from '../cancel/CanceledError.js'; |
| import AxiosHeaders from '../core/AxiosHeaders.js'; |
| import adapters from '../adapters/adapters.js'; |
|
|
| |
| |
| |
| |
| |
| |
| |
| function throwIfCancellationRequested(config) { |
| if (config.cancelToken) { |
| config.cancelToken.throwIfRequested(); |
| } |
|
|
| if (config.signal && config.signal.aborted) { |
| throw new CanceledError(null, config); |
| } |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| export default function dispatchRequest(config) { |
| throwIfCancellationRequested(config); |
|
|
| config.headers = AxiosHeaders.from(config.headers); |
|
|
| |
| config.data = transformData.call(config, config.transformRequest); |
|
|
| if (['post', 'put', 'patch'].indexOf(config.method) !== -1) { |
| config.headers.setContentType('application/x-www-form-urlencoded', false); |
| } |
|
|
| const adapter = adapters.getAdapter(config.adapter || defaults.adapter, config); |
|
|
| return adapter(config).then( |
| function onAdapterResolution(response) { |
| throwIfCancellationRequested(config); |
|
|
| |
| response.data = transformData.call(config, config.transformResponse, response); |
|
|
| response.headers = AxiosHeaders.from(response.headers); |
|
|
| return response; |
| }, |
| function onAdapterRejection(reason) { |
| if (!isCancel(reason)) { |
| throwIfCancellationRequested(config); |
|
|
| |
| if (reason && reason.response) { |
| reason.response.data = transformData.call( |
| config, |
| config.transformResponse, |
| reason.response |
| ); |
| reason.response.headers = AxiosHeaders.from(reason.response.headers); |
| } |
| } |
|
|
| return Promise.reject(reason); |
| } |
| ); |
| } |
|
|