HTTP API 5

[Spring MVC] HTTP 응답 - HTTP API, 메시지 바디 직접 입력

HTTP 응답 - HTTP API, 메시지 바디에 직접 입력 HTTP API를 제공하는 경우에는 HTML이 아니라 데이터를 전달해야 하므로, HTTP 메시지 바디에 JSON 같은 형식으로 데이터를 실어 보낸다. HTTP 요청에서 응답까지 대부분 다루었으므로 이번에 정리해 보자. 참고 HTML이나 뷰 템플릿을 사용해도 HTTP 응답 메시지 바디에 HTML 데이터가 담겨서 전달된다. 여기서 설명하는 내용은 정적 리소스나 뷰 템플릿을 거치지 않고, 직접 HTTP 응답 메시지를 전달하는 경우를 말한다. ResponseBodyController @Slf4j //@Controller //@ResponseBody @RestController public class ResponseBodyController { @Get..

[Spring MVC] HTTP 요청 메시지 - JSON

HTTP 요청 메시지 - JSON 이번에는 HTTP API에서 주로 사용하는 JSON 데이터 형식을 조회해 보자. 기존 서블릿에서 사용했던 방식과 비슷하게 시작해 보자. RequestBodyJsonController private ObjectMapper objectMapper = new ObjectMapper(); @PostMapping("/request-body-json-v1") public void requestBodyJsonV1(HttpServletRequest request, HttpServletResponse response) throws IOException { ServletInputStream inputStream = request.getInputStream(); String messageB..

[Spring MVC] HTML, HTTP API, CSR, SSR

정적 리소스 고정된 HTML 파일, CSS, JS, 이미지 영상 등을 제공 주로 웹 브라우저 HTML 페이지 동적으로 필요한 HTML 파일을 생성해서 전달 웹 브라우저 : HTML 해석 HTTP API HTML이 아니라 데이터를 전달 주로 JSON 형식 사용 다양한 시스템에서 호출 다양한 시스템에서 호출 데이터만 주고받음, UI 화면이 필요하면 클라이언트가 별도 처리 앱, 웹 클라이언트, 서버 to 서버 다양한 시스템 연동 주로 JSON 형태로 데이터 통신 UI 클라이언트 접점 앱 클라이언트(아이폰, 안드로이드, PC 앱) 웹 브라우저에서 자바스크립트를 통한 HTTP API 호출 React, Vue.js 같은 웹 클라이언트 서버 to 서버 주문 서버 -> 결제 서버 기업 간 데이터 통신 서버 사이드 렌더..

[HTTP] HTTP API 설계 예시

HTTP API 설계 예시 HTTP API - 컬렉션 POST 기반 등록 예) 회원 관리 API 제공 HTTP API - 스토어 PUT 기반 등록 예) 정적 콘텐츠 관리, 원격 파일 관리 HTML Form 사용 웹 페이지 회원 관리 GET, POST만 지원 회원 관리 시스템 API 설계 - POST 기반 등록 회원 목록 /members > GET 회원 등록 /members > POST 회원 조회 /members/{id} > GET 회원 수정 /members/{id} > PATCH, PUT, POST 회원 삭제 /members/{id} > DELETE POST - 신규 자원 등록 특징 클라이언트는 등록될 리소스의 URI를 모른다. 회원 등록 /members > POST POST /members 서버가 새로..

HTTP/HTTP 메서드 2023.01.19

[HTTP] HTML Form, HTML API 데이터 전송

HTML Form 데이터 전송 POST 전송 - 저장 GET 전송 - 저장 GET 전송 - 조회 multipart/form-data enctype = "mutipart/form-data"을 통해 file과 같은 바이너리 데이터 전송 가능 HTML Form 데이터 전송 정리 HTML Form submit시 POST 전송 예) 회원가입, 상품 주문, 데이터 변경 Content-Type:application/x-www-form-urlencoded 사용 form의 내용을 메시지 바디를 통해서 전송 (key=value, 쿼리 파라미터 형식) 전송 데이터를 url encoding 처리 예) abc김 > abc%EA%B9%80 HTML Form은 GET 전송도 가능 Content-Type: multipart/form..

HTTP/HTTP 메서드 2023.01.19