12345678910111213141516171819202122232425262728293031323334353637383940 |
- import { useUserInfoStore } from "@/stores/useUserInfoStore";
- import { useWalletStore } from "@/stores/useWalletStore";
- import actions from "@/utils/client/actions";
- import Request from "./axios";
- const server = new Request({
- timeout: 10 * 1000,
- transform: {
- // instance interceptor
- requestInterceptor: (config) => {
- return config;
- },
- requestInterceptorCatch: (err) => {
- return err;
- },
- responseInterceptor: (config) => {
- return config;
- },
- responseInterceptorCatch: async (err) => {
- console.log(2233, err);
- const { response }: any = err;
- if (!response) return err;
- // if (response.status !== 200) return Promise.reject(response.message);
- // @ts-ignore
- const { code } = response.data;
- switch (code) {
- case 401:
- localStorage.removeItem("globalStore");
- useWalletStore.getState().reset();
- useUserInfoStore.getState().reset();
- await actions();
- break;
- default:
- return err;
- }
- },
- },
- });
- export { server };
|