📌웹어플리케이션에서 흐름 제어(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를 복사해서 새로운 요청이 발생함.
'웹기반 애플리케이션' 카테고리의 다른 글
JSP의 기본객체, cookie와 session (0) | 2023.03.15 |
---|---|
예외 (Error, Exception) (0) | 2023.03.15 |
JSP, Servlet컨테이너의 역할 (0) | 2023.03.09 |
클라이언트의 전송 컨텐츠 확보/ Http(Stateless, Connectless) response packaging(1) (0) | 2023.03.09 |
Stream이란? (0) | 2023.03.06 |