From cda4b5dc6357d3beed638dd94a97f5930bd8ded2 Mon Sep 17 00:00:00 2001 From: CJewon <112820744+CJewon@users.noreply.github.com> Date: Sat, 15 Feb 2025 13:52:06 +0900 Subject: [PATCH 1/2] =?UTF-8?q?:truck:=20truck=20:=20=EC=B9=B4=EC=B9=B4?= =?UTF-8?q?=EC=98=A4,=20=EA=B5=AC=EA=B8=80=20=EB=A1=9C=EA=B7=B8=EC=9D=B8?= =?UTF-8?q?=20=EC=84=B1=EA=B3=B5=20=EC=8B=9C=20route=20=EC=9C=84=EC=B9=98?= =?UTF-8?q?=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/oauth/google/_components/GoogleCallback.tsx | 8 ++------ src/app/oauth/kakao/_components/KakaoCallback.tsx | 4 ++-- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/src/app/oauth/google/_components/GoogleCallback.tsx b/src/app/oauth/google/_components/GoogleCallback.tsx index 52886c8..e1428c5 100644 --- a/src/app/oauth/google/_components/GoogleCallback.tsx +++ b/src/app/oauth/google/_components/GoogleCallback.tsx @@ -15,16 +15,13 @@ export default function GoogleCallback() { const fetchGoogleToken = async () => { try { - // 1️⃣ code → ID 토큰 교환 const idToken = await exchangeCodeForIdToken(code); if (!idToken) throw new Error('Google ID 토큰 발급 실패'); - - // 2️⃣ 서버로 ID 토큰 전송 const googleLogin = await fetch(`${process.env.NEXT_PUBLIC_BASE_URL}/auth/signIn/GOOGLE`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ - token: idToken, // 🔑 Google은 ID 토큰을 전달해야 함 + token: idToken, redirectUri: process.env.NEXT_PUBLIC_GOOGLE_REDIRECT_URI, }), }); @@ -32,7 +29,7 @@ export default function GoogleCallback() { const response = await googleLogin.json(); if (response.accessToken && response.refreshToken) { login(response.accessToken, response.refreshToken); - router.push('/'); + router.push('/wines'); } else { console.error('🚨 구글 로그인 실패:', response); router.push('/signin'); @@ -43,7 +40,6 @@ export default function GoogleCallback() { } }; - // ID 토큰 발급 함수 const exchangeCodeForIdToken = async (code: string) => { const tokenResponse = await fetch('https://oauth2.googleapis.com/token', { method: 'POST', diff --git a/src/app/oauth/kakao/_components/KakaoCallback.tsx b/src/app/oauth/kakao/_components/KakaoCallback.tsx index f39d5f0..444ea6e 100644 --- a/src/app/oauth/kakao/_components/KakaoCallback.tsx +++ b/src/app/oauth/kakao/_components/KakaoCallback.tsx @@ -24,7 +24,7 @@ export default function KakaoCallback() { const response = await kakaoLogin.json(); login(response.accessToken, response.refreshToken); - router.push('/'); + router.push('/wines'); } catch (error) { console.error('카카오 로그인 실패:', error); router.push('/signin'); @@ -34,5 +34,5 @@ export default function KakaoCallback() { fetchKakaoToken(); }, [searchParams, router, login]); - return

카카오 로그인 처리 중...

; + return
카카오 로그인 처리 중...
; } From 8305158697ecaa7702a1144e6379297feb4175ef Mon Sep 17 00:00:00 2001 From: CJewon <112820744+CJewon@users.noreply.github.com> Date: Sat, 15 Feb 2025 17:12:36 +0900 Subject: [PATCH 2/2] =?UTF-8?q?:lipstick:=20lipstick=20:=20=EC=B9=B4?= =?UTF-8?q?=EC=B9=B4=EC=98=A4,=20=EA=B5=AC=EA=B8=80=20=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EC=9D=B8=20=EC=84=B1=EA=B3=B5=20=EC=8B=9C=20=EB=A1=9C=EB=94=A9?= =?UTF-8?q?=EC=8A=A4=ED=94=BC=EB=84=88=EB=A5=BC=20=ED=99=9C=EC=9A=A9?= =?UTF-8?q?=ED=95=98=EC=97=AC=20=EB=A1=9C=EB=94=A9=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=20UI=20=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/oauth/google/_components/GoogleCallback.tsx | 7 ++++++- src/app/oauth/kakao/_components/KakaoCallback.tsx | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/app/oauth/google/_components/GoogleCallback.tsx b/src/app/oauth/google/_components/GoogleCallback.tsx index e1428c5..0ac0c52 100644 --- a/src/app/oauth/google/_components/GoogleCallback.tsx +++ b/src/app/oauth/google/_components/GoogleCallback.tsx @@ -3,6 +3,7 @@ import { useEffect } from 'react'; import { useRouter, useSearchParams } from 'next/navigation'; import { useAuth } from '@/contexts/AuthProvider'; +import LoadingSpinner from '@/components/LoadingSpinner'; export default function GoogleCallback() { const searchParams = useSearchParams(); @@ -59,5 +60,9 @@ export default function GoogleCallback() { fetchGoogleToken(); }, [searchParams, router, login]); - return

🔄 구글 로그인 처리 중...

; + return ( +
+ +
+ ); } diff --git a/src/app/oauth/kakao/_components/KakaoCallback.tsx b/src/app/oauth/kakao/_components/KakaoCallback.tsx index 444ea6e..1eb87a3 100644 --- a/src/app/oauth/kakao/_components/KakaoCallback.tsx +++ b/src/app/oauth/kakao/_components/KakaoCallback.tsx @@ -3,6 +3,7 @@ import { useEffect } from 'react'; import { useRouter, useSearchParams } from 'next/navigation'; import { useAuth } from '@/contexts/AuthProvider'; +import LoadingSpinner from '@/components/LoadingSpinner'; export default function KakaoCallback() { const searchParams = useSearchParams(); @@ -34,5 +35,9 @@ export default function KakaoCallback() { fetchKakaoToken(); }, [searchParams, router, login]); - return
카카오 로그인 처리 중...
; + return ( +
+ +
+ ); }