궁금한점이 있습니다
384
작성한 질문수 36
로그인 하지 않고 /item 요청시
1. LogFilter 필터
2. LoginCheckFilter 필터
순으로 실행되는데 로그인 필터에서
httpResponse.sendRedirect("/login?redirectURL=" + requestURI);
으로 redirect한 부분에서 이해가 되질 않습니다.
해당 URL : /login?redirectURL=requestURL 로 클라이언트에서 다시 재요청하는데 처음에는
@GetMapping("/login")
public String loginForm(@ModelAttribute("loginForm") LoginForm form) {
return "login/loginForm";
}
get 메서드로 매핑된 loginForm으로 컨트롤러가 호출되어 화면을 랜더링해주고 그다음에
@PostMapping("/login")
public String loginV4(@Valid @ModelAttribute LoginForm form, BindingResult bindingResult,
@RequestParam(defaultValue = "/") String redirectURL,
HttpServletRequest request) {
if (bindingResult.hasErrors()) {
return "login/loginForm";
}
Member loginMember = loginService.login(form.getLoginId(), form.getPassword());
if (loginMember == null) {
bindingResult.reject("loginFail", "아이디 또는 비밀번호가 맞지 않습니다.");
return "login/loginForm";
}
//로그인 성공 처리
//세션이 있으면 있는 세션 반환, 없으면 신규 세션을 생성
HttpSession session = request.getSession();
//세션에 로그인 회원 정보 보관
session.setAttribute(SessionConst.LOGIN_MEMBER, loginMember);
return "redirect:" + redirectURL;
}
POST 메서드로 매핑된 loginV4 메서드가 호출되는거 아닌가요?
그러면 처음 필터에서 redirect로 해당 URL 파라미터로 보낸 쿼리 파라미터인
redirectURL=requestURL을 POST 메서드(loginV4)에서 사용할 수 있게 쿼리 파라미터를
유지 시켜줘야하는거 아닌가요?
get 메서드 loginForm에서 쿼리 파라미터로 받은 값은 loginForm.html에서 사용할 수 있지만
다시 post메서드인 loginV4에서 사용하기 위해 loginForm.html에서 쿼리 파라미터를 보내줘야하는거 아닌가요..?
답변 1
0
안녕하세요. 조윤호님
get form을 보시면 다음 부분을 확인할 수 있습니다.
<form action="" method="post">
이렇게 form을 비워두고 전송하게 되면 GET의 URL을 그대로 POST로 전송하게 됩니다.
감사합니다.
이미지 업로드와 db 트랜잭션 묶는법
0
67
1
Could not resolve org.springframework.boot:spring-boot-starter-validation:2.4.4
0
92
2
MessageSourceTest 코드
0
67
1
인터셉터 에러 설정
0
66
1
resolveArgument()메서드 질문
0
71
1
43강 검증1 에서 실패 로직 관련 질문있습니다.
0
81
2
타임리프 3.X 버전 rendering, serializer 에러 해결 방법
2
154
3
스프링 빈에 등록이 안되는거 같은데 어떻게 하면 좋을까요?ㅠㅠ
0
121
3
pdf 오타 문의
0
63
1
ItemUpdateForm 검증 관련 질문입니다.
0
62
1
22page 링크 주소 변경
0
69
2
특정 데이터와 파일을 함께 저장 시, 테이블 구조 질문
0
61
1
섹션3번 수업에 대한 질문입니다.
0
98
2
@Autowired 보다 더 좋은 방법이 어떤 걸까요?
0
97
2
타입컨버터 가 람다랑 비슷해 보이는데 저의 생각이 맞는지?.
0
81
1
자바스크립트 인라인에서 객체 직렬화 시 오류가 납니다
0
159
3
스프링부트 - 오류페이지2 에서 500.html 에서 쓰인 객체 질문
0
79
1
톰캣 에러 페이지가 안보입니다.
0
120
2
apiEceptionController에서 센드 에러 호출하면 안되는지?
0
91
1
세션 타임아웃시 쿠키 삭제 방법이 없나요?
0
134
2
ApiExceptionController 질문드립니다.
0
71
1
셀렉박스 챕터에서 option value에 ==배송 방식 선택== 이것을 넣은 이유가 궁금함, 이렇게 구상해도 되는지?
0
69
1
MemberRepository 필드의 fianl 선언 유무
0
92
2
혹시 index.html 에서는 fragment 사용이 안되는건가요
0
64
1





