좋은 URI 설계
HTTP 요청 대상을 "리소스"라고 부르는데, 그에 대한 본질을 이 이상으로 정의할 수 없습니다;
그것은 문서, 사진 또는 다른 어떤 것이든 될 수 있습니다.
각 리소스는 리소스 식별을 위해 HTTP 전체에서 사용되는 URI에 의해 식별됩니다.
- 좋은 URI 설계를 위해서는 리소스 식별이 가장 중요하다.
- 회원 정보 관리 API를 개발한다고 하면, 회원이 리소스가 될 수 있다.
- ex) /members/{id}
- URI는 리소스만 식별한다!
HTTP 메서드
- GET : 특정 리소스의 표시를 요청합니다. GET을 사용하는 요청은 오직 데이터를 받기만 합니다.
- POST : 특정 리소스에 엔티티를 제출할 때 쓰입니다. 이는 종종 서버의 상태의 변화나 부작용을 일으킵니다.
- PUT : 목적 리소스 모든 현재 표시를 요청 payload로 바꿉니다.
- PATCH : 리소스의 부분만을 수정하는 데 쓰입니다.
- DELETE : 특정 리소스를 삭제합니다.
GET
리소스 조회
서버에 전달하고 싶은 데이터는 쿼리(query)를 통해서 전달
동작 과정
POST
클라이언트는 메시지 바디를 통해서 서버에 요청 데이터를 전달
서버는 메시지 바디를 통해 받은 데이터를 처리
동작 과정
PUT
리소스가 있을 경우 대체한다.
리소스가 없을 경우 생성한다.
리소스를 완전히 대체한다.
클라이언트가 리소스 위치를 식별한다는 점에서 POST와 차이가 있다.
PATCH
리소스를 부분 변경한다.
DELETE
리소스 제거
HTTP 메서드의 속성
안전 : 호출했을 경우 리소스의 변경 여부
멱등 : 한 번 호출했을 때와 여러 번 호출했을 경우의 결과가 같은 경우
캐시가능 : 응답 결과 리소스를 캐시해서 사용 가능 여부
출처
[인프런] 모든 개발자를 위한 HTTP 웹 기본 지식
https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC/dashboard
모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의
실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., - 강의 소개 | 인프런...
www.inflearn.com
웹 리소스 식별
https://developer.mozilla.org/ko/docs/Web/HTTP/Basics_of_HTTP/Identifying_resources_on_the_Web
웹 리소스 식별 - HTTP | MDN
HTTP 요청 대상을 "리소스"라고 부르는데, 그에 대한 본질을 이 이상으로 정의할 수 없습니다; 그것은 문서, 사진 또는 다른 어떤 것이든 될 수 있습니다. 각 리소스는 리소스 식별을 위해 HTTP
developer.mozilla.org
HTTP 요청 메서드
https://developer.mozilla.org/ko/docs/Web/HTTP/Methods
HTTP 요청 메서드 - HTTP | MDN
HTTP는 요청 메서드를 정의하여, 주어진 리소스에 수행하길 원하는 행동을 나타냅니다. 간혹 요청 메서드를 "HTTP 동사"라고 부르기도 합니다. 각각의 메서드는 서로 다른 의미를 구현하지만, 일부
developer.mozilla.org
HTTP
https://ko.wikipedia.org/wiki/HTTP
HTTP - 위키백과, 우리 모두의 백과사전
HTTP(HyperText Transfer Protocol, 문화어: 초본문전송규약, 하이퍼본문전송규약)는 W3 상에서 정보를 주고받을 수 있는 프로토콜이다. 주로 HTML 문서를 주고받는 데에 쓰인다. 주로 TCP를 사용하고 HTTP/3
ko.wikipedia.org
'WEB > 네트워크' 카테고리의 다른 글
[네트워크] HTTP 공부 #6 (0) | 2022.03.31 |
---|---|
[네트워크] HTTP 공부 #5 (0) | 2022.03.29 |
[네트워크] HTTP 공부 #3 (0) | 2022.02.12 |
[네트워크] HTTP 공부 #2 (0) | 2022.02.11 |
[네트워크] HTTP 공부 #1 (0) | 2022.02.11 |