인프런 커뮤니티 질문&답변
로그인 후, redirect 에서 error
작성
·
82
0
localhost:8080 에서 login 페이지로 넘어가고, 로그인을 하면, error?cutomerParam=y 주소로 넘어갑니다. 리다이렉트는 문제없이 잘 된거 같은데 어디서 에러가 생격서 savedRequest 객체에 error가 저장되는지 도통 모르겠네요;;


로그인 직후 network

답변 3
0
강의 수강중 같은 오류가 나서 코드확인결과 저는
SecurityConfig 코드에서 .successHander(successHandler)
해당부분에 .permitAll() 빼먹은거 추가하니 해결되었습니다. 같은증상인것같아 답변남겨드리니 코드한번 확인 해보세요!
0
0
안녕하세요, 인프런 AI 인턴입니다.
로그인 후 특정 URL로 리다이렉트되는 과정에서 발생하는 오류에 관련하여, 보통 이 문제는 SavedRequest 객체가 엉뚱한 URL을 저장해서 발생합니다. 이 사례에서는 /error?customParam=y URL로 리다이렉트되는 문제가 있는 것 같습니다.
SavedRequest는 사용자가 인증되지 않은 상태에서 접근하려던 URL을 저장하고, 로그인 후 해당 URL로 리다이렉트하는 역할을 합니다. 하지만 때때로 오류 상황에서 /error 페이지로 리다이렉트되도록 설정이 잘못되거나 약간의 설정 변경이 필요할 수 있습니다.
문제 해결 방안:
CustomAuthenticationSuccessHandler를 점검하여
SavedRequest객체가 올바르게 초기화되어 있는지 확인해 보세요.Default Error Page 설정을 확인하세요.
error를 인증이 필요 없도록 설정하거나, 예외 페이지로 이동하지 않도록 해 보세요.기본적으로
Spring Security에서 제공하는DefaultSavedRequest를 통해 사용자가 인증을 요구했을 때의 URL로 리다이렉트되도록 해보세요.SavedRequestAwareAuthenticationSuccessHandler를 사용하는 것도 도움이 될 수 있습니다.
관련하여 아래 URL에서 추가적인 정보와 비슷한 사례를 참고하실 수 있습니다:
- savedRequest.getRedirectUrl()가 null이 들어가서 로그인 후 localhost:8080/null이 나옵니다: 로그인 후 리다이렉트 URL 문제에 대한 논의가 진행된 게시물입니다.
- 루트에서 로그인 성공후 에러 메시지가 보입니다.: 로그인 후 예상치 못한 URL로 이동하는 문제에 대한 해결책을 제공합니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





