HTTP 요청 데이터를 웹 브라우저에서 사용하는 방식이 아닌
HTTP message body에 직접 데이터를 담아서 요청하는 방식을 공부해보았다.
먼저 가장 단순한 텍스트 메시지를 HTTTP 메시지 바디에 담아서 전송해보았다.
HTTP 메시지 바디의 데이터를 InputStream을 사용해서 직접 읽을 수 있다.
package hello.servlet.Basic.request;
import org.springframework.util.StreamUtils;
import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
@WebServlet(name = "RequestBodyStringServlet", urlPatterns = "/request-body-string")
public class RequestBodyStringServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
ServletInputStream inputStream = request.getInputStream();
String messageBody = StreamUtils.copyToString(inputStream, StandardCharsets.UTF_8);
System.out.println("messageBody = " + messageBody);
response.getWriter().write("ok");
}
}
메시지 바디에 hello를 넣고 (포스트맨 이용)
보내보았더니

ok를 확인할 수 있었다.
보통은 JSON형식으로 주고받는다.
'웹프로그래밍 > 스프링 MVC' 카테고리의 다른 글
| 15. HttpServletResponse - 기본 사용법 (0) | 2022.03.16 |
|---|---|
| 14. HTTP 요청 데이터 - API 메시지 바디 - JSON (0) | 2022.03.16 |
| 12. HTTP 요청 데이터 - POST HTML Form (0) | 2022.03.16 |
| 11. HTTP 요청 데이터 - GET 쿼리 파라미터 (0) | 2022.03.15 |
| 10. HTTP 요청 데이터 - 개요 (0) | 2022.03.15 |