TIL

HTTP 요청 데이터

ac012235 2024. 12. 11. 22:40

Client에서 Server로 데이터를 전달하는 방법

1. GET + Query Parameter(=Query String)

 

2. POST + HTML Form(x-www-form-urlencoded)

    • POST - HTTPMethod
    • /form-data - PATH(경로)
    • content-type: application/x-www-form-urlencoded - Header
    • key1=value1&key2=value2 - Body

  • @Slf4j - 로그를 남기기 위한 annotation
  • response.getWriter().write(); - 직접적으로 응답데이터로 접근해서 응답데이터를 만들어낼 수 있다.
  • @Controller - 응답할 view가 있을 때 사용, response 객체를 다루고 직접 데이터를 넣어주게 되면 view가 아니라 data가 응답.

3. HTTP Request Body

 

  • private ObjectMapper objectMapper = new ObjectMapper(); - Json 데이터로 요청을 받았을 때 그 Json 데이터를 JAVA객체로 바꿔주는 Jackson 라이브러리의 기능
  • ServletInputStream inputStream = request.getInputStream(); - 전달된 데이터를 꺼내기 위해 사용
  • String messageBody = StreamUtils.copyToString(); - 매개변수를 전달 -> UTF-8 형태로 Json이 변환되어 String messageBody에 담김
  • Board board = objectMapper.readValue(); - objectMapper의 readValue메서드를 통해 messageBody(문자열 Json) Board.class를 매개변수로 전달하게 되면 문자열 Json데이터를 클래스로 변경해줌

 


클라이언트에서 서버로 데이터를 전달할 수 있는 3가지 방법!!

1. GET 메서드에 Query Parameter를 사용하여 데이터를 전달하는 방법

2. POST 메서드에 HTML FORM 데이터 형태로 데이터를 전달하는 방법 

3. HTTP 요청 메세지 바디에 데이터를 입력하는 방법

'TIL' 카테고리의 다른 글

@ModelAttribute  (0) 2024.12.19
@RequestParam  (2) 2024.12.18
Spring Annotation3  (1) 2024.12.10
Spring Annotation2  (0) 2024.12.09
Spring Annotation  (0) 2024.12.08