반응형
들어가기 전
REST, REST API, RESTful API의 특징들과 차이점에 대해서 알아보고자 한다.
본문
1. REST 란?
- 웹과 같은 분산 하이퍼미디어 환경에서 자원의 존재/상태 정보를 표준화된 HTTP 메서드로 주고받는 웹 아키텍처이다.
- HTTP URI( Uniform Resource Identifier )를 통해 자원(Resource)를 명시하고, HTTP Method(POST, GET, PUT, DELETE)를 통해 해당 자원에 대한 CRUD Operation을 적용하는 것을 의미한다.
- JSON, XML, TEXT, RSS 등 여러 형태의 Representation으로 나타내어 질 수 있다.
- Server-Cilent 구조이다. 자원이 있는 쪽이 Server, 자원을 요청하는 쪽이 Client이다.
- Stateless(무상태)성을 갖는다.
2. REST API 란?
- REST 아키텍처 원칙을 따르는 웹 API이다. 즉, REST 기반으로 서비스 API를 구현한 것. REST API는 클라이언트와 서버 간의 통신을 단순화하고 표준화된 방법으로 자원에 접근할 수 있도록 한다.
- HTTP 메서드를 사용한다. (GET: 정보 요청(조회), POST: 정보 생성, PUT: 정보 수정(전체), PATCH: 정보 수정(일부), DELETE: 정보 삭제)
- 자원의 URL로 식별한다. 각 자원은 고유한 URL을 통해 식별되며, 이 URL을 통해 자원에 접근하고 조작할 수 있다.
2.1 REST API 설계 기본 규칙
- URL은 명사를 사용해야 한다.
- URL 경로는 소문자를 사용해야 한다.
- 언더바(_)는 사용하지 않으며 하이픈(-)을 사용한다.
- 슬래시(/)로 계층 관계를 표현하고, URL 마지막은 슬래시(/)를 사용하지 않는다.
- 파일 확장자는 포함하지 않는다. ex) O = http://example/test, X = http://example/test.jsp
3. RESTful
- REST 아키텍처를 구현하는 웹 서비스를 나타내기 위해 사용되는 용어이다. REST API를 제공하는 웹 서비스를 RESTful하다고 할 수 있다.
마무리
URI: 통합 자원 식별자로 인터넷에 있는 자원을 나타내는 유일한 주소이다. 식별자 URL: 식별자+위치 URL과 헷갈릴 수 있는데 간단하게 생각하면 example.co.kr 은 리소스 이름만 나타내기 때문에 URI이고, https://example.co.kr은 URL이라고 할 수 있다. |
CRUD Operation - Create: 생성(POST) - Read: 조회(GET) - Update: 수정(PUT) - Delete: 삭제(DELETE) - HEAD: header 정보 조회(HEAD) |
반응형
'Knowledge' 카테고리의 다른 글
[Knowledge] Content Type & MIME Type (0) | 2024.11.11 |
---|---|
[Knowledge] 싱글 페이지 애플리케이션(Single Page Application) (0) | 2024.11.04 |
[Knowledge] RSA 암호화 알고리즘 (0) | 2024.08.21 |
[Knowledge] AES 암호화 알고리즘 (0) | 2024.08.14 |
[Knowledge] 유출, 누출, 노출 차이 (0) | 2024.08.12 |