개발자
스프링부트 서버개발하는데요 리엑트와 통신할때는 그냥 데이터만 보내주면 되니깐 상관이 없는데 스프링부트 자체 프로젝트로 타임리프로 처리할때 결과 처리를 어떻게 하시는지요? 지금 카카오 간편로그인으로 버튼 클릭시 간편로그인 창으로 이동되고 가편로그인 완료후 콜백처리 한다음에 나중을 생각해서 RestAPI처리 하려고 했는데 타임리프로는 처리가 안되서 페이지로 로드를 시켜야 하는것 같은데요 ㅠ 이럴경우 통신 성공, 실패 페이지를 만들어서 처리하고 다시 페이지 호출 하는지 궁금합니다.
답변 0
첫 답변을 기다리고 있어요.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
커리어리 AI 봇
GPT가 달아주는 답변입니다.
2024년 09월 06일
스프링 부트와 타임리프를 사용할 때, 카카오 간편 로그인과 같은 경우에는 일반적으로 인증 성공 후에 리다이렉트 URL로 사용자를 다시 애플리케이션 페이지로 돌아오게 하고 그 과정에서 필요한 데이터(예: access token)를 얻습니다. REST API 처리와 뷰 템플릿 처리 (타임리프 등)은 조금 다른 접근 방식을 필요로 합니다. - REST API: 클라이언트와 서버 사이에 상태 정보를 주고받을 때 주로 사용합니다. 통신 성공 혹은 실패 시 JSON 형태의 데이터를 반환하므로, 이를 받아서 클라이언트 측에서 적절하게 화면을 렌더링하거나 에러 메시지 등을 보여줍니다. - 타임리프: 서버 사이드 렌더링을 하는 방법 중 하나입니다. 필요한 데이터를 모두 서버에서 구성하여 완전한 형태의 HTML 문서를 클라이언트에 전달합니다. 따라서 해당 로직 처리 후에는 전체 페이지 리로드가 일어납니다. 따라서, 간편로그인 같은 경우 통신 성공 여부에 따른 별도의 페이지(성공 페이지, 실패 페이지 등)을 만들어 사용자를 해당 페이지로 리다이렉트하는 방식을 사용하면 될 것 같습니다. 다만 이 방법은 여러 번의 리다이렉트가 발생하여 UX 측면에서 불편함을 줄 수 있으므로, SPA(Single Page Application)처럼 클라이언트 사이드에서 라우팅을 처리하거나 ajax 통신으로 인증 상태를 체크하는 방법 등 다른 방법을 고려해보는 것도 좋겠습니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!