2
0
mirror of https://github.com/tenrok/axios.git synced 2026-05-15 11:59:42 +03:00

require interceptors to return values (#4874)

Fixes #4873

Co-authored-by: Jay <jasonsaayman@gmail.com>
This commit is contained in:
Stephen Jennings
2022-09-26 12:11:29 -07:00
committed by GitHub
parent b0710bf8a2
commit 64906bd886
2 changed files with 14 additions and 1 deletions
Vendored
+1 -1
View File
@@ -343,7 +343,7 @@ export interface AxiosInterceptorOptions {
}
export interface AxiosInterceptorManager<V> {
use<T = V>(onFulfilled?: (value: V) => T | Promise<T>, onRejected?: (error: any) => any, options?: AxiosInterceptorOptions): number;
use(onFulfilled?: (value: V) => V | Promise<V>, onRejected?: (error: any) => any, options?: AxiosInterceptorOptions): number;
eject(id: number): void;
}
+13
View File
@@ -300,6 +300,19 @@ axios.interceptors.response.use(
(error: any) => Promise.reject(error)
);
const voidRequestInterceptorId = axios.interceptors.request.use(
// @ts-expect-error -- Must return an AxiosRequestConfig (or throw)
(_response) => {},
(error: any) => Promise.reject(error)
);
const voidResponseInterceptorId = axios.interceptors.response.use(
// @ts-expect-error -- Must return an AxiosResponse (or throw)
(_response) => {},
(error: any) => Promise.reject(error)
);
axios.interceptors.request.eject(voidRequestInterceptorId);
axios.interceptors.response.eject(voidResponseInterceptorId);
axios.interceptors.response.use((response: AxiosResponse) => response);
axios.interceptors.response.use((response: AxiosResponse) => Promise.resolve(response));