IT/WEB
페이지의 이동과 브라우저의 인지,인식, 리다이렉트 http 302,200
iezs
2012. 1. 13. 15:54
흐음... 우선.. 리다이렉트 302(http) 는 리다이렉트의 내용을 의미한다. 즉, 그 내용은 브라우저의 history에 남지 않는다. (여기서 리다이렉트는 html 레벨이 아닌 서블릿이나.. 그런 레벨의 redirect 임) http 200 이 브라우저의 history로 남더라. 즉 구매페이지는 200 으로 보여졌고 history에 쌓였고, 중간 구매액션페이지에서 리다이렉트로 완료페이지로 보냈다면, 구매액션페이지는 302 완료페이지는 200 으로 떨어진다. 실제 확인해보면 history.length 는 구매페이지, 구매완료페이지 해서 2로 나온다. 물론 패킷캡쳐해보면 중간 구매액션페이지는 302로 잡히긴한다. ============================= 추가로 jsp 에서 response.sendredirect 를 기술해놓으면 해당페이지는 302 처리되어 history에 쌓이지 않는다.(redirect.jsp 가 302로 안남음) 다만 이동 목표 b.html 은 히스트로에 쌓인다. 목표url이 주소로 바뀌어있다. (즉 주소가 바뀜) jsp 에서 RequestDispatcher dispatcher = request.getRequestDispatcher(url); dispatcher.forward(request, response); 위와같이 forward 로 history에도 쌓이지 않는다. 브라우저 상의 주소는 바뀌지 않는다. (패킷에 forward.jsp 403 만 남음) 목표 페이지가 히스토리에 남지 않는다. (왜냐면 주소변화가 없으니까) |