diff --git a/src/pages/login/TestUserLogin.js b/src/pages/login/TestUserLogin.js new file mode 100644 index 0000000..38d5b12 --- /dev/null +++ b/src/pages/login/TestUserLogin.js @@ -0,0 +1,29 @@ +import { useEffect } from "react"; +import { useNavigate, useParams } from "react-router-dom"; +import axios from "axios"; + +const TestUserLogin = () => { + const navigate = useNavigate(); + const { userId } = useParams(); + + useEffect(() => { + const doLogin = async () => { + try { + await axios.post(`/user/test/login/${userId}`, {}, { skipAuthInterceptor: true }); + navigate("/room", { replace: true }); + } catch (e) { + // 실패 시에도 일단 로그인 화면으로 보냄 + navigate("/login", { replace: true }); + } + }; + if (userId) { + doLogin(); + } + }, [userId, navigate]); + + return null; +}; + +export default TestUserLogin; + + diff --git a/src/routes/BaseRoutes.js b/src/routes/BaseRoutes.js index 8c777d7..8c6a77a 100644 --- a/src/routes/BaseRoutes.js +++ b/src/routes/BaseRoutes.js @@ -16,6 +16,7 @@ import EditQuiz from "../pages/quiz/EditQuiz"; import CreateImageQuiz from "../pages/quiz/CreateImageQuiz"; import AdminLogin from "../pages/login/AdminLogin"; import UserList from "../pages/admin/UserList"; +import TestUserLogin from "../pages/login/TestUserLogin"; const BaseRoutes = () => { return ( @@ -47,6 +48,7 @@ const BaseRoutes = () => { } /> } /> + } /> {/* 에러페이지 */} } />