[Boostcourse] 풀스택/웹 프로그래밍(풀스택)

Request, Response 객체 이해하기 { HttpServletRequest, HttpServletResponse }

Ben의 프로그램 2023. 7. 14. 17:18
728x90
학습 목표
웹의 동작은 '요청'과 '응답' 이 많이 발생합니다. 이번 시간에는 클라이언트가 서버에게 보낸 요청을 추상화한 객체 HttpServletRequest 와 서버가 클라이언트에게 응답하기 위한 정보를 추상화한 객체 HttpServletResponse 에 대해서 알아봅니다. 

 

HttpServletRequest HttpServletResponse 이해하기
웹 브라우저에 URL 을 입력하고 엔터를 입력하면 웹 브라우저는 도메인과 포트 번호를 이용하여 서버에 접속합니다. 그리고 나서 클라이언트의 다양한 정보를 포함한 요청 Request 정보를 서버에 전송합니다. 클라이언트로부터 요청이 들어오면 WAS 는 HttpServletRequest 객체와 HttpServletResponse 객체를 생성합니다. 

HttpServletRequest 객체에는 클아이언트가 요청할 때 가지고 들어온 다양한 정보들을 이 객체에 담습니다. HttpServletRequest 는 http 프로토콜의 request 정보를 서블릿에게 전달하기 위한 목적으로 사용니다. 헤더정보, 파라미터, 쿠키, URI, URL, Body의 Stream 등의 정보를 읽어 들이는 메소드를 가지고 있습니다. HttpServletResponse 객체에는 현재 접속한 클라이언트에게 정보를 전송하기 위해서 담을 수 있는 객체입니다. WAS는 어떤 클아이언트가 요청을 보냈는지 알고 있고, 해당 클라이언트에게 응답을 보내기 위한 HttpServletResponse 객체를 생성하여 서블릿에게 전달합니다. 서블릿은 이 객체를 이용하여 content type, 응답코드, 응답 메시지 등을 전송할 수 있게 됩니다. 이렇게 생성된 두 개의 객체를 요청 정보에 있는 매핑된 서블릿에게 WAS 가 전달합니다. 전달한 객체는 service, doGet, doPost 같은 메서드에 파라미터로 전달되어 사용하게 됩니다. 

 

 

 

출처 : boostcourse 웹 프로그래밍(풀스택) 
https://www.boostcourse.org/web316/lecture/20655?isDesc=false