HttpServletRequest와 HttpServletResponse

song yuheon·2023년 8월 31일
0

Spring

목록 보기
26/93
post-thumbnail

웹 개발에서 HttpServletRequestHttpServletResponse는 중요한 요소이다. 이 두 객체에 대한 기본적인 개념과 특징을 정리하였다.


1. HttpServletRequest

  • 저장 위치: HttpServletRequest 객체는 서버 측에서 처리되는 객체이다. 이 객체는 클라이언트의 요청 정보를 담는다.
  • 생명주기: 요청이 처리되는 동안만 존재하며, 처리가 종료되면 소멸된다.
  • 주요 기능: 이 객체는 클라이언트의 요청 정보를 포함한다. 이 정보에는 HTTP 메소드, 헤더, 파라미터, 요청 URL, 쿠키 등이 포함된다.

2. HttpServletResponse

  • 저장 위치: HttpServletResponse는 서버에서 처리되는 객체이다. 클라이언트에게 응답을 전송하기 위해 이 객체를 사용한다.
  • 생명주기: 응답이 처리되는 동안에만 존재하며, 처리가 완료되면 소멸된다.
  • 주요 기능: 클라이언트에게 전송할 응답 정보를 포함한다. 이를 통해 응답 상태 코드, 헤더, 쿠키, 응답 본문 등을 설정할 수 있다.
  • 쿠키 저장: HttpServletResponse를 사용해 클라이언트에 쿠키를 전송하면, 이 쿠키는 클라이언트의 브라우저에 저장된다.

3. 쿠키와 JWT

  • JWT로 인증 처리 시, HttpServletResponse를 사용하여 JWT를 클라이언트의 브라우저에 쿠키로 저장할 수 있다.
  • 서버는 이후의 요청에서 HttpServletRequest로부터 해당 쿠키를 읽어 JWT를 검증하며 인증을 수행한다.

4. 프로그램 흐름

  • 클라이언트 요청이 서버에 도착하면, 해당 요청은 먼저 필터를 거친다. 필터에서는 인증, 로깅, CORS 설정 등의 전처리 작업이 이루어진다.
  • 필터를 거친 요청은 이후 컨트롤러로 전달된다. 컨트롤러는 비즈니스 로직 처리 후 응답을 구성하여 클라이언트에게 반환한다.
  • 응답은 클라이언트에게 전송되기 전에 다시 필터를 거친다. 이때 필터에서 응답과 관련된 후처리 작업이 수행된다.

profile
backend_Devloper

0개의 댓글