|
@@ -1,18 +1,18 @@
|
|
|
-import adapterMock from '@/request/mock';
|
|
|
|
|
-import pinia, { useAccountStore, usePlatformStore } from '@/stores';
|
|
|
|
|
-
|
|
|
|
|
import { createAlova } from 'alova';
|
|
import { createAlova } from 'alova';
|
|
|
import adapterFetch from 'alova/fetch';
|
|
import adapterFetch from 'alova/fetch';
|
|
|
import VueHook from 'alova/vue';
|
|
import VueHook from 'alova/vue';
|
|
|
|
|
+import adapterMock from '@/request/mock';
|
|
|
|
|
|
|
|
|
|
+import { getPinia, useAccountStore, usePlatformStore } from '@/stores';
|
|
|
|
|
+import router from '@/router';
|
|
|
|
|
|
|
|
export default createAlova({
|
|
export default createAlova({
|
|
|
baseURL: import.meta.env.SIX_REQUEST_BASE ?? '/',
|
|
baseURL: import.meta.env.SIX_REQUEST_BASE ?? '/',
|
|
|
statesHook: VueHook,
|
|
statesHook: VueHook,
|
|
|
requestAdapter: import.meta.env.DEV ? adapterMock() : adapterFetch(),
|
|
requestAdapter: import.meta.env.DEV ? adapterMock() : adapterFetch(),
|
|
|
async beforeRequest(method) {
|
|
async beforeRequest(method) {
|
|
|
- const store = usePlatformStore(pinia);
|
|
|
|
|
- method.config.headers.warrant ??= store.serialNumber;
|
|
|
|
|
|
|
+ const pinia = getPinia();
|
|
|
|
|
+ method.config.headers.warrant ??= usePlatformStore(pinia).serialNumber;
|
|
|
if ( !method.config.meta?.ignoreToken ) method.config.headers.Authorization ??= useAccountStore(pinia).token;
|
|
if ( !method.config.meta?.ignoreToken ) method.config.headers.Authorization ??= useAccountStore(pinia).token;
|
|
|
},
|
|
},
|
|
|
responded: {
|
|
responded: {
|
|
@@ -25,7 +25,11 @@ export default createAlova({
|
|
|
/* 接口修正 code */
|
|
/* 接口修正 code */
|
|
|
if ( result.success === true || result.code === 200 ) result.code = 0;
|
|
if ( result.success === true || result.code === 200 ) result.code = 0;
|
|
|
const { success = false, code = success ? 0 : -1, data, msg: message = '未知错误', ...props } = result;
|
|
const { success = false, code = success ? 0 : -1, data, msg: message = '未知错误', ...props } = result;
|
|
|
- if ( code === 0 ) { return data; } else {}
|
|
|
|
|
|
|
+ if ( code === 0 ) { return data; }
|
|
|
|
|
+ else if (code === 401) {
|
|
|
|
|
+ useAccountStore(getPinia()).$reset();
|
|
|
|
|
+ await router.replace({ name: 'login', replace: true });
|
|
|
|
|
+ }
|
|
|
throw { ...props, message: `${ message }` };
|
|
throw { ...props, message: `${ message }` };
|
|
|
} catch ( e: any ) {
|
|
} catch ( e: any ) {
|
|
|
if ( !method.meta?.ignoreException ) {
|
|
if ( !method.meta?.ignoreException ) {
|