Redirect와 Forward

songu1·2022년 8월 2일
0

현장실습

목록 보기
4/6

1. Redirect

클라이언트가 URL을 요청했을때 서버가 클라이언트에게 다른 URL로 재접속하라는 명령을 보내는 것

  • 클라이언트는 해당 URL로 다시 요청
  • URL주소가 바뀌면서 다시 접속됨

* 예시

  • 예시1

    @Controller
    public class TestController {
    
    	@GetMapping("/test1")
    	public String test1() {
    	//sub1이라는 요청을 return
    		return "redirect:/sub1";
    	}
        
        @GetMapping("/sub1")
    	public String test1() {
    	//sub1.jsp를 찾아 그 결과를 브라우저에 응답
    		return "sub1";
    	}
    
    }
    • 결과
      • 주소창과 페이지가 바뀜
  • 예시2

    @RequestMapping("join.do")
    public String join(String id){
    	return "redirect:loginForm.do";
    }
    • 결과

      • join.do 입력받음
      • redirect : loginForm 해줌

2. Forward

서버 내부에서 일어나는 호출
- 다음으로 이동할 URL로 요청정보를 그대로 전달

  • 클라이언트의 URL에 대한 요청이 들어오면 해당 URL이 다른 URL로 포워딩 된 것이 확인되었을 경우 서버에서 포워딩된 URL의 리소스를 확인하여 클라이언트에 응답함
  • 포워딩 발생 시 클라이언트 단에서는 아무런 동작을 하지 않음. 웹브라우저에는 최초에 호출한 URL이 표시됨

결론!!

- URL의 변화 : redirect
- 객체의 재사용 : forward

0개의 댓글