diff --git a/index.d.ts b/index.d.ts index 8490672664..065f34bd79 100644 --- a/index.d.ts +++ b/index.d.ts @@ -49,6 +49,7 @@ export interface AxiosRequestConfig { paramsSerializer?: (params: any) => string; data?: any; timeout?: number; + timeoutErrorMessage?: string; withCredentials?: boolean; adapter?: AxiosAdapter; auth?: AxiosBasicCredentials; diff --git a/lib/adapters/xhr.js b/lib/adapters/xhr.js index 519e3c3745..7e8668dade 100644 --- a/lib/adapters/xhr.js +++ b/lib/adapters/xhr.js @@ -88,7 +88,11 @@ module.exports = function xhrAdapter(config) { // Handle timeout request.ontimeout = function handleTimeout() { - reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED', + var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded'; + if (config.timeoutErrorMessage) { + timeoutErrorMessage = config.timeoutErrorMessage; + } + reject(createError(timeoutErrorMessage, config, 'ECONNABORTED', request)); // Clean up request