/** * ➡️ 경로 : 루트 (/) * * 📄 Home Page * 홈 페이지 컴포넌트 * * - 쿠키 기반 인증 토큰 검증 및 자동 로그인 처리 * - 로그인 성공 시 지도 페이지로 리다이렉트 * - 기존 토큰 존재 시 바로 지도 페이지 이동 * - 로그인 실패 시 에러 로깅 및 처리 * - 사용자 세션 관리 및 초기 라우팅 제어 * - Next.js useRouter를 통한 클라이언트 사이드 라우팅 * * 🔗 사용 API * - 로그인: POST /api/v1/auth/login (user-service) */ "use client"; import { LoginApi } from "@/entities/auth"; import { useEffect } from "react"; import { getCookie } from "@/shared/lib"; import { AUTH_USER_ID } from "@/shared/config"; import { useRouter } from "next/navigation"; export default function Home() { const router = useRouter(); const checkToken = getCookie(AUTH_USER_ID); useEffect(() => { const hostname = window.location.hostname; if (hostname === "localhost" || hostname === "127.0.0.1" || hostname === "con.mind-one.co.kr") { if (!checkToken) { async function doLogin() { try { await LoginApi.login({ userId: "CLEANWATER", password: "gktneh12!@" }); window.location.href = "/map"; } catch (err) { console.error("로그인 실패", err); } } doLogin(); } else router.push("/map"); } else router.push("/map"); }, []); }