This commit is contained in:
focp212@naver.com
2025-10-13 16:36:51 +09:00
parent a792708214
commit 06518e02b9
2 changed files with 17 additions and 19 deletions

View File

@@ -4,6 +4,7 @@ import { tokenManager } from './tokenManager';
import config from '@/config'; import config from '@/config';
import { useAppBridge } from '@/hooks'; import { useAppBridge } from '@/hooks';
class ApiClient { class ApiClient {
private instance: AxiosInstance; private instance: AxiosInstance;
private isRefreshing = false; private isRefreshing = false;
@@ -11,9 +12,8 @@ class ApiClient {
resolve: (value?: unknown) => void; resolve: (value?: unknown) => void;
reject: (error?: unknown) => void; reject: (error?: unknown) => void;
}> = []; }> = [];
private isNativeEnvironment: any;
//private isNativeEnvironment: boolean; private requestRefreshToken: any;
//private requestRefreshToken: () => Promise<any>;
constructor() { constructor() {
this.instance = axios.create({ this.instance = axios.create({
@@ -25,19 +25,7 @@ class ApiClient {
}, },
}); });
/*
const {
isNativeEnvironment,
openBiometricRegistrationPopup,
requestRefreshToken,
logout
} = useAppBridge();
this.isNativeEnvironment = isNativeEnvironment;
this.requestRefreshToken = requestRefreshToken;
this.setupInterceptors(); this.setupInterceptors();
*/
} }
private setupInterceptors(): void { private setupInterceptors(): void {
@@ -58,7 +46,7 @@ class ApiClient {
(response: AxiosResponse) => response, (response: AxiosResponse) => response,
async (error: AxiosError) => { async (error: AxiosError) => {
const originalRequest = error.config as AxiosRequestConfig & { _retry?: boolean }; const originalRequest = error.config as AxiosRequestConfig & { _retry?: boolean };
console.log('originalRequest ==> ', JSON.stringify(originalRequest));
if (error.response?.status === 401 && !originalRequest._retry) { if (error.response?.status === 401 && !originalRequest._retry) {
if (this.isRefreshing) { if (this.isRefreshing) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
@@ -76,7 +64,7 @@ class ApiClient {
console.log('refreshToken!!'); console.log('refreshToken!!');
/* /*
this.requestRefreshToken().then((token) => { this.requestRefreshToken1().then((token) => {
console.log('requestRefreshToken +[' + JSON.stringify(token) + ']' ); console.log('requestRefreshToken +[' + JSON.stringify(token) + ']' );
}); });
@@ -114,6 +102,16 @@ class ApiClient {
this.failedQueue = []; this.failedQueue = [];
} }
/*
private async requestRefreshAccessToken(): Promise<any> {
const {
isNativeEnvironment,
requestRefreshToken
} = useAppBridge();
}
*/
private async refreshAccessToken(): Promise<string> { private async refreshAccessToken(): Promise<string> {
const refreshToken = tokenManager.getRefreshToken(); const refreshToken = tokenManager.getRefreshToken();

View File

@@ -67,7 +67,7 @@ export const SubLayout = () => {
} }
console.log('token ' + JSON.stringify(token)); console.log('token ' + JSON.stringify(token));
setLocalStorage(StorageKeys.Usrid, token.userId); setLocalStorage(StorageKeys.Usrid, token.usrid);
setLocalStorage(StorageKeys.TokenType, token.tokenType); setLocalStorage(StorageKeys.TokenType, token.tokenType);
setLocalStorage(StorageKeys.AccessToken, token.accessToken); setLocalStorage(StorageKeys.AccessToken, token.accessToken);
setLocalStorage(StorageKeys.RefreshToken, token.refreshToken); setLocalStorage(StorageKeys.RefreshToken, token.refreshToken);
@@ -78,7 +78,7 @@ export const SubLayout = () => {
setLocalStorage(StorageKeys.Requires2FA, token.requires2FA); setLocalStorage(StorageKeys.Requires2FA, token.requires2FA);
useStore.getState().UserStore.setUserInfo({ useStore.getState().UserStore.setUserInfo({
usrid: token.userId, usrid: token.usrid,
tokenType: token.tokenType, tokenType: token.tokenType,
accessToken: token.accessToken, accessToken: token.accessToken,
refreshToken: token.refreshToken, refreshToken: token.refreshToken,