2022/04/07 3

[요약] REST API 디자인 규칙 - 03. HTTP를 이용한 인터랙션 설계

HTTP 요청 메서드 REST API 리소스 모델에서 각 메소드는 고유한 의미를 가진다. GET - 리소스 상태의 표현 HEAD - 메타데이터 조회 PUT - 새 리소스 생성 또는 갱신 DELETE - 자식 리소스 제거 POST - 새 리소스 생성 또는 컨트롤러 실행 세부 규칙 터널링 금지 터널링이란 원래 의도와 맞지 않게 HTTP 를 사용하는 행위를 뜻한다. GET 리소스의 상태 표현을 조회한다. HEAD 응답 헤더(메타데이터)를 조회한다. 바디가 없다. PUT 리소스 삽입, 갱신 을 위해 사용한다. 변경한 값을 갖는 메시지 바디를 포함할 수 있다. POST 새로운 리소스 생성 시 사용한다. 새 메시지를 나타내는 메시지 바디를 포함할 수 있다. 컨트롤러 리소스를 실행할 수 있다. DELETE 오직 특정..

개발 2022.04.07

[요약] REST API 디자인 규칙 - 02. URI 식별자 설계

URI 형태 마지막 슬래시(/) 를 포함하지 않는다. 가독성을 높이기 위해 하이픈(-)을 사용한다. 밑줄(_)은 사용하지 않는다. 소문자를 사용한다. 확장자는 사용하지 않는다. URI 경로 도큐먼트 이름 - 단수 명사. 컬렉션, 스토어 이름 - 복수 명사. 컨트롤러 이름은 동사(구). 변하는 부분은 유일한 값으로 대체. CRUD 는 포함하지 않는다.

개발 2022.04.07

[요약] REST API 디자인 규칙 - 01. REST 소개

웹 아키텍쳐의 제약사항 클라이언트/서버 클라이언트와 서버의 역할을 명백히 분리한다. 균일한 인터페이스 인터페이스는 일관성 있게 분리되어야 한다. 자원 식별 - 요청 자체만으로 대상 자원을 식별할 수 있다 ( ex: uri ). 기술을 통한 자원 처리 - 요청에 포함된 메타데이터를 비롯한 자원에 대한 기술만으로 대상을 충분히 수정하거나 삭제할 수 있다. 자기 서술적 메시지 - 메시지는 자신을 어떻게 처리할 지에 대한 충분한 정보를 제공한다. HATEOAS - 클라이언트의 동작을 위해 별도의 하드코딩이 필요 없으며, 응답 또는 문서 만으로 모든 동작을 기술할 수 있다. 계층 시스템 - 보안, 부하 분산, 응답 속도 개선등의 목적으로 네트워크의 중간 매체를 이용하되, 사용자는 이를 인지하지 못하도록 배치할 수..

개발 2022.04.07