Network/2. HTTP 2

RESTful API 설계

Method 주로 사용하는 HTTP Method는 다음 5개가 있다. GET POST PUT PATCH DELETE 서버에 따라 GET, POST 외에는 지원하지 않는 경우도 있다. 이 경우 PUT, PATCH, DELETE 대신 POST를 사용한다. 서버에 따라 GET 메소드의 HTTP Body를 받지 못하는 경우도 있다. 이 경우 클라이언트의 URL에 정보를 노출시키고 싶지 않거나 HTTP Body에 담아서 보내야 할 때 POST를 사용한다. 클라이언트 라이브러리에 따라서 GET 메소드에 HTTP Body를 보내지 못하는 경우도 있다. 이 경우 POST를 사용한다. JavaScript의 Fetch API (GET 메소드에서 HTTP Body 지원하지 않음) Member Schema { "id": 13..

Network/2. HTTP 2022.02.22

Spring RESTful API 특징

일반 Spring Framework는 Jackson 라이브러리를 통해 값을 매핑한다. Spring Framework는 HTTP Body와 URL 쿼리스트링에 들어있는 값을 받는다. HTTP Method, Content-Type, 파라미터 어노테이션(@RequestParam, @ModelAttribute, @RequestBody)에 따라 받는 값이 다르다. HTTP Body와 URL 쿼리스트링 값을 동시에 받는 상황에서 key가 중복되는 경우 파라미터 데이터 타입이 String이 아니라면 하나의 값만 받는데, HTTP Body 값을 우선으로 받는다. 파라미터 데이터 타입이 String이라면 컴마(,)로 구분하여 모든 값을 받는다. 파라미터 데이터 타입이 배열이나 Collection이라면 모든 값을 받는다...

Network/2. HTTP 2022.02.22