📌웹어플리케이션에서 흐름 제어(A->B) 방법

 

1. Request Dispatche(요청 분기)


   - Forward : 요청은 A(서블릿)로 응답은 B(JSP 활용케이스가 많음.)에서만 처리됨(Model2 구조에서 활용). 

                    서버사이드 위임 처리 방식
   
   - Include : 요청은 A로 전송 -> 서버내에서 B로 이동->A로 복귀
              (최종 응답은 A+B의 형태로 전송, A가 B를 내포함.) => 페이지 모듈화에서 활용
   
2. Redirect


요청은 A로 전송 -> Body 가 없고, 상태코드가 3xx 인 응답 전송(Location 헤더 포함)  ==> *connectLess, stateLess

    connectLess : 클라이언트가 서버에 요청을 하고 응답을 받으면 바로 TCP/IP 연결을 끊어 연결을 유지 하지 않는 것
-> Location(B) 방향으로 새로운 요청 전송 -> B에서 최종 응답 전송
       301/302 : 원본 요청(A)에 대한 정보가 삭제된 후, GET 방식의 새로운 요청이 redirection.
                         POST ->redirect->GET ==>PRG(앞글자) 패턴 처리구조
       307 : REST 처리에서 많이 활용되며, PUT/DELETE 요청에서 활용.
                원본 요청이 발생하고, redirection 될 때, 원본의 method와 body를 복사해서 새로운 요청이 발생함.
  

+ Recent posts