Spring/Spring MVC

HTTP 요청 데이터 - API 메시지 바디

민철킹 2021. 4. 4. 22:44

단순 텍스트

 

HTTP 메시지 바디에 단순한 텍스트를 담아서 전송해보겠다.

HTTP 메시지 바디의 데이터를 InputStream을 사용해서 직접 읽을 수 있다.

  • getInputStream은 바이트 코드로 변환하여 반환해준다.
  • 이를 java에서 제공하는 StreamUtils를 사용하여 문자열로 변환 후 출력하여보겠다.
    • 변환할 문자의 기준을 정해주어야함. StandardCharsets

단순 텍스트 읽어오기 성공!

 


JSON

HTTP API에서 주로 사용하는 JSON형식으로 데이터를 전달해보자.

content-type: application/json

 

 

JSON 형식으로 파싱할 수 있게 객체 생성

  • Lombok을 사용해서 게터, 세터 

  • JSON도 문자이기 때문에 InputStream을 사용하여 문자열로 변환한 후에 출력해보자.

 

 

읽어오는데 성공, 읽어온 data를 우리가 만들어 놓은 파싱 객체로 변환시켜보자.

 

JSON을 사용하기 위해서는 JSON 라이브러리를 사용해야하는데 스프링은 기본적으로 jackson이라는 JSON라이브러리를 제공한다.

 

  • ObjectMapper를 사용하여 HelloData의 객체로 Json을 파싱한다.

파싱 성공

 

참고로 HTML Form 데이터도 메시지 바디를 통해 전송되므로 InputStream을 사용하여 직접 읽을 수있지만 파라미터 조회기능을 제공하기 때문에 파라미터 조회 기능을 사용하면 된다.

반응형

'Spring > Spring MVC' 카테고리의 다른 글

HTTP 응답 데이터  (0) 2021.04.06
HttpServletResponse  (0) 2021.04.06
HTTP 요청 데이터 GET / POST  (0) 2021.04.04
HTTPServletRequest  (0) 2021.04.04
Hello!! Servlet  (0) 2021.04.03