본문 바로가기
Progamming/BoostCourse

redirect

by 동그란 혜주 2019. 1. 21.
  • 들어가기 전에

게시판 같은 곳에서 글을 작성하는 경우가 있다. 글을 모두 작성한 후에 글 작성 버튼을 클릭할 것이다. 이때 클라이언트가 서버에게 '글을 작성해주세요' 라는 요청을 보내게 된다. 서버는 해당 글을 저장한 후, 웹 브라우저에게 글 목록으로 이동하라고 응답을 보내게 된다. 웹 브라우저는 글 목록으로 이동하라는 서버의 요청을 받은 후, 자동으로 서버에게 글 목록을 요청하여 응답받아 출력하게 된다. 서버가 클라이언트에게 어떤 URL로 이동하라는 요청을 보내는 것을 리다이렉트라고 한다.




  • 학습 목표

1. 리다이렉트를 이해한다.

2. 리다이렉트를 사용할 수 있다.




  • 핵심 개념

- HttpServletRequest

- sendRedirect()




  • 리다이렉트(Redirect)

- 리다이렉트는 HTTP 프로토콜로 정해진 규칙이다.

- 서버는 클라이언트의 요청에 대해 특정 URL로 이동을 요청할 수 있다. 이를 리다이렉트라고 한다.

- 서버는 클라이언트에게 HTTP 상태코드 302로 응답하는데 이때 헤더 내 Location 값에 이동할 URL을 추가한다. 클라이언트는 리다이렉션 응답을 받게되면 헤더(Location)에 포함된 URL로 재요청을 보내게 된다. 이때 브라우저의 주소창은 새 URL로 바뀌게 된다.

- 클라이언트는 서버로부터 받은 상태값이 302면 Location 헤더값으로 재요청을 보내게 된다. 이때 브라우저의 주소창은 전송받은 URL로 바뀌게 된다.

- 서블릿이나 JSP는 리다이렉트하기 위해 HttpServletResponse 객체클래스가 가지고있는 sendRedirect() 메소드를 사용한다.

· 처음 redirect01이 들어왔을 때 생겼던 요청객체와 응답객체랑, 다시 들어와서 redirect02가 요청이 들어갔을 때 생기는 요청객체와 응답객체는 다른 객체이다.




  • redirect 실습

- redirect01.jsp, redirect02.jsp 파일을 작성

- 웹 브라우저가 redirect01.jsp을 요청

- redirect01은 redirect02.jps로 리다이렉팅하는 로직이 실행되도록 한다

- 결과확인




  • 브라우저에서 리다이렉트 확인

- 크롬에서 우측버튼을 누르고 검사를 선택한 후 Network 탭을 선택한다.

- redirect01.jsp 를 실행하면 서버로부터 응답코드 302를 받는 것을 알 수 있다.




  • 예제 동작 설명


'Progamming > BoostCourse' 카테고리의 다른 글

servlet & jsp 연동  (0) 2019.01.21
forward  (0) 2019.01.21
JSP 내장객체  (0) 2019.01.21
JSP 문법  (0) 2019.01.21
JSP 라이프싸이클  (0) 2019.01.21

댓글