login test

This commit is contained in:
focp212@naver.com
2025-10-13 17:46:10 +09:00
parent 6d4f2c749e
commit e9758f2240
3 changed files with 67 additions and 124 deletions

View File

@@ -31,7 +31,6 @@ export interface ContextType {
};
export const SubLayout = () => {
const { reload } = useNavigate();
useScrollToTop();
const [onBack, setOnBack] = useState(undefined);
const [headerTitle, setHeaderTitle] = useState<string>('');
@@ -44,61 +43,13 @@ export const SubLayout = () => {
const [headerNavigationKey, setHeaderNavigationKey] = useState<number>(1);
const { callLogin } = useUserInfo();
const {
isNativeEnvironment,
openBiometricRegistrationPopup,
requestToken,
logout
} = useAppBridge();
const { isNativeEnvironment } = useAppBridge();
const { mutateAsync: homeGroups } = useHomeGroupsMutation();
const [loginSuccess, setLoginSuccess] = useState<boolean>(false);
const wrapperClassName = 'wrapper';
const handleRequestToken = useCallback(async () =>{
requestToken().then((token) => {
if(!token) {
// 토큰이 null인 경우 로그아웃 처리
console.error('Token is null, performing logout');
useStore.getState().UserStore.resetUserInfo();
setLoginSuccess(false);
logout();
return;
}
console.log('token ' + JSON.stringify(token));
setLocalStorage(StorageKeys.Usrid, token.usrid);
setLocalStorage(StorageKeys.TokenType, token.tokenType);
setLocalStorage(StorageKeys.AccessToken, token.accessToken);
setLocalStorage(StorageKeys.RefreshToken, token.refreshToken);
setLocalStorage(StorageKeys.AccessTokenExpiresIn, token.accessTokenExpiresIn);
setLocalStorage(StorageKeys.RefreshTokenExpiresIn, token.refreshTokenExpiresIn);
setLocalStorage(StorageKeys.MenuGrants, token.menuGrants);
setLocalStorage(StorageKeys.ClientAddressIP, token.clientAddressIP);
setLocalStorage(StorageKeys.Requires2FA, token.requires2FA);
useStore.getState().UserStore.setUserInfo({
usrid: token.usrid,
tokenType: token.tokenType,
accessToken: token.accessToken,
refreshToken: token.refreshToken,
accessTokenExpiresIn: token.accessTokenExpiresIn,
refreshTokenExpiresIn: token.refreshTokenExpiresIn,
menuGrants: token.menuGrants,
clientAddressIP: token.clientAddressIP,
requires2FA: token.requires2FA,
});
callHomeGroups();
}).catch((error) => {
// 토큰 요청 실패 시 로그아웃 처리
console.error('Failed to request token:', error);
useStore.getState().UserStore.resetUserInfo();
setLoginSuccess(false);
logout();
});
}, []);
const callHomeGroups = () => {
let userInfo = useStore.getState().UserStore.userInfo;
let params: HomeGroupsParams = {
@@ -119,50 +70,28 @@ export const SubLayout = () => {
}
setLoginSuccess(true);
setHeaderNavigationKey(headerNavigationKey + 1);
reLogin();
});
};
const reLogin = () => {
console.log('reLogin');
let userInfo = useStore.getState().UserStore.userInfo;
if(userInfo.accessTokenExpiresIn){
let accessTokenExpiresIn = userInfo.accessTokenExpiresIn;
let timer = setTimeout(() => {
if(isNativeEnvironment){
handleRequestToken();
}
else{
handleLogin();
}
}, accessTokenExpiresIn * 1000);
}
};
const handleLogin = useCallback(async () => {
const userParmas = {
id: 'nictest00',
password: 'nictest00'
};
let userParmas;
if(!isNativeEnvironment){
userParmas = {
id: 'nictest00',
password: 'nictest00'
};
}
callLogin(userParmas).then(() => {
callHomeGroups();
}).catch((error: any) => {
setLoginSuccess(false);
});
}, []);
const tokenTimeCheck = () => {
}
useEffect(() => {
console.log('isNativeEnvironment : ['+isNativeEnvironment+']');
if(isNativeEnvironment){
handleRequestToken();
}
else{
handleLogin();
}
handleLogin();
}, []);
return (