diff --git a/functions/.well-known/apple-app-site-association.ts b/functions/.well-known/apple-app-site-association.ts index 8a6a4fdc..23138d7c 100644 --- a/functions/.well-known/apple-app-site-association.ts +++ b/functions/.well-known/apple-app-site-association.ts @@ -3,7 +3,7 @@ const APPLE_APP_SITE_ASSOCIATION = `{ "apps": [], "details": [ { - "appID": "95YWTT5L8K.com.sopt-stamp-iOS.release", + "appID": "95YWTT5L8K.com.sopt-stamp-iOS.alpha", "paths": ["*"] } ] diff --git a/functions/.well-known/assetlinks.json.ts b/functions/.well-known/assetlinks.json.ts index 5bf7edac..4e773433 100644 --- a/functions/.well-known/assetlinks.json.ts +++ b/functions/.well-known/assetlinks.json.ts @@ -5,8 +5,7 @@ const ASSETLINKS_JSON = `[ "namespace": "android_app", "package_name": "org.sopt.official", "sha256_cert_fingerprints": [ - "29:23:1F:E3:7A:FD:76:9C:58:CA:F3:E2:D9:7C:A1:69:CF:04:A8:6E:5B:8A:C6:56:6A:6F:E8:FD:D8:FF:47:43", - "30:8A:35:1F:E1:88:94:6F:BC:E9:B2:D5:FC:2F:9B:F2:10:35:2A:43:B8:36:03:8B:C4:1B:EA:51:23:76:1C:00" + "89:D9:B9:FA:59:2D:FE:43:5D:EA:80:E6:BF:88:16:2A:8B:2E:F4:1C:F4:29:B6:76:A3:2C:44:46:1D:12:B1:6E" ] } } diff --git a/public/.well-known/apple-app-site-association b/public/.well-known/apple-app-site-association index 8d57ce1d..a5aa6fb3 100644 --- a/public/.well-known/apple-app-site-association +++ b/public/.well-known/apple-app-site-association @@ -3,10 +3,8 @@ "apps": [], "details": [ { - "appID": "95YWTT5L8K.com.sopt-stamp-iOS.release", - "paths": [ - "*" - ] + "appID": "95YWTT5L8K.com.sopt-stamp-iOS.alpha", + "paths": ["*"] } ] } diff --git a/public/.well-known/assetlinks.json b/public/.well-known/assetlinks.json index ea7ddb5a..92bc60e2 100644 --- a/public/.well-known/assetlinks.json +++ b/public/.well-known/assetlinks.json @@ -1,12 +1,12 @@ -[{ - "relation": ["delegate_permission/common.handle_all_urls"], - "target": { - "namespace": "android_app", - "package_name": "org.sopt.official", - "sha256_cert_fingerprints": - [ - "29:23:1F:E3:7A:FD:76:9C:58:CA:F3:E2:D9:7C:A1:69:CF:04:A8:6E:5B:8A:C6:56:6A:6F:E8:FD:D8:FF:47:43", - "30:8A:35:1F:E1:88:94:6F:BC:E9:B2:D5:FC:2F:9B:F2:10:35:2A:43:B8:36:03:8B:C4:1B:EA:51:23:76:1C:00" - ] +[ + { + "relation": ["delegate_permission/common.handle_all_urls"], + "target": { + "namespace": "android_app", + "package_name": "org.sopt.official", + "sha256_cert_fingerprints": [ + "89:D9:B9:FA:59:2D:FE:43:5D:EA:80:E6:BF:88:16:2A:8B:2E:F4:1C:F4:29:B6:76:A3:2C:44:46:1D:12:B1:6E" + ] + } } -}] \ No newline at end of file +] diff --git a/src/api/index.ts b/src/api/index.ts index a1b7e601..505514ae 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -80,6 +80,7 @@ axiosCrewInstance.interceptors.response.use( ); export const handleTokenError = async (error: AxiosError) => { + console.log(error); const originRequest = error.config; if (!error.response || !originRequest) throw new Error('에러가 발생했습니다.'); @@ -95,8 +96,8 @@ export const handleTokenError = async (error: AxiosError) => { // 개인정보 처리방침 페이지는 로그인 필요 없음, 구글 정책상 오픈 return Promise.reject(error); } - // 에스크 문자를 통한 딥링크 접근을 위해 허용 - if (window.location.pathname === '/.well-known/apple-app-site-association' || '/.well-known/assetlinks.json') { + // 앱 딥링크를 위한 .well-known 경로는 인증 체크 제외 + if (window.location.pathname.startsWith('/.well-known')) { return Promise.reject(error); } /** 토큰이 없으면 refresh 시도하지 않고 바로 intro로 이동 */ @@ -105,6 +106,7 @@ export const handleTokenError = async (error: AxiosError) => { window.location.replace('/intro'); throw new Error('토큰이 없습니다.'); } + try { const { data } = await axiosAuthInstance.post<{ data: { accessToken: string } }>( `/api/v1/auth/refresh/web`,