diff --git a/apps/sn/app/page.tsx b/apps/sn/app/page.tsx index a81b401db..f1c5622eb 100644 --- a/apps/sn/app/page.tsx +++ b/apps/sn/app/page.tsx @@ -1,50 +1,18 @@ /** * ➡️ 경로 : 루트 (/) - * + * * 📄 Home Page * 홈 페이지 컴포넌트 * - * - 쿠키 기반 인증 토큰 검증 및 자동 로그인 처리 - * - 로그인 성공 시 지도 페이지로 리다이렉트 - * - 개발 환경에서는 루트 진입 시 자동 로그인 후 지도 페이지 이동 - * - 로그인 실패 시 에러 로깅 및 처리 + * - 루트 진입 시 지도 페이지(/map)로 리다이렉트 + * - 인증 토큰 검증 및 로그인 화면 이동은 /map 및 공통 인증 흐름에서 처리 * - 사용자 세션 관리 및 초기 라우팅 제어 - * - Next.js useRouter를 통한 클라이언트 사이드 라우팅 - * - * 🔗 사용 API - * - 로그인: POST /api/v1/auth/login (user-service) */ "use client"; -import { authService } from "@/entities/auth"; import { useEffect } from "react"; -const DEV_HOSTNAMES = new Set(["localhost", "127.0.0.1", "con.mind-one.co.kr"]); - -const DEV_LOGIN_PAYLOAD = { - userId: process.env.NEXT_PUBLIC_DEV_LOGIN_USER_ID || "CLEANWATER", - password: process.env.NEXT_PUBLIC_DEV_LOGIN_PASSWORD || "gktneh12!@", -}; - export default function Home() { useEffect(() => { - const hostname = window.location.hostname; - const isDevHost = DEV_HOSTNAMES.has(hostname); - - if (!isDevHost) { - window.location.replace("/map"); - return; - } - - async function doLogin() { - try { - // 개발 환경에서는 남아 있는 만료/부분 쿠키로 인한 /map <-> / 루프를 막기 위해 항상 토큰을 재발급한다. - await authService.login(DEV_LOGIN_PAYLOAD); - window.location.replace("/map"); - } catch (err) { - console.error("로그인 실패", err); - } - } - - void doLogin(); + window.location.replace("/map"); }, []); } diff --git a/apps/sn/docs/작업계획/SN-패키지구조진단/001-fe-SN-파일역할목록.md b/apps/sn/docs/작업계획/SN-패키지구조진단/001-fe-SN-파일역할목록.md index 5a2ec33fe..2d7925a42 100644 --- a/apps/sn/docs/작업계획/SN-패키지구조진단/001-fe-SN-파일역할목록.md +++ b/apps/sn/docs/작업계획/SN-패키지구조진단/001-fe-SN-파일역할목록.md @@ -38,7 +38,7 @@ | 파일 | 역할 | 선언/주석 보조 근거 | 행 | 직접 참조 | 상태 | |---|---|---|---:|---:|---| | [layout.tsx]() | Next 루트 HTML·테마·메타데이터·Provider 진입점 | metadata, RootLayout / ➡️ 경로 : 모든 페이지 | 44 | 0 | 등록/도구 진입 규칙 대상 | -| [page.tsx]() | 루트 진입/개발 자동로그인·지도 이동 | DEV_HOSTNAMES, DEV_LOGIN_PAYLOAD, Home / 홈 페이지 컴포넌트 | 51 | 0 | 등록/도구 진입 규칙 대상 | +| [page.tsx]() | 루트 진입/지도 이동 | Home / 홈 페이지 컴포넌트 | 18 | 0 | 등록/도구 진입 규칙 대상 | | [providers.tsx]() | 실제 src/app/providers의 AppProvider 재수출. 현재 layout에서 사용 | | 2 | 1 | 정적 참조 있음 | ## app/(auth)/auth