REST API
REST API는 웹 서비스 간 통신을 위한 아키텍처 스타일입니다
REST는 자원(Resource)을 URI로 표현하고, HTTP 메서드(GET, POST, PUT, DELETE 등)를 사용하여 해당 자원을 조작하는 방식을 정의합니다
REST API의 특징
- 자원 지향적(Resource-Oriented): 모든 자원은 고유한 식별자인 URI를 통해 표현되며, 이러한 자원들은 서버에 저장되어 관리됩니다.
- Stateless (무상태성): 각 요청은 클라이언트의 상태를 서버에 저장하지 않고, 필요한 정보를 모두 담고 있어야 합니다. 서버는 이전 요청과 무관하게 각 요청을 독립적으로 처리합니다.
- CRUD 작업 지원: REST API는 기본적으로 데이터를 생성(Create), 조회(Read), 수정(Update), 삭제(Delete)하는 작업을 지원합니다. 이를 통해 데이터베이스와 상호작용하는데 사용될 수 있습니다.
- 자체 설명 메커니즘(Self-descriptive): 요청을 보낼 때 어떤 작업을 수행할지 알 수 있도록, 메시지에 대한 정보가 포함되어야 합니다. 일반적으로 HTTP 메서드, 헤더, 상태 코드 등이 이 정보를 담고 있습니다.
- Hypermedia as the Engine of Application State (HATEOAS): REST API의 특징 중 하나로, 서버에서 제공하는 리소스와 상태에 대한 정보를 하이퍼링크로 제공하여 클라이언트가 상태에 따라 필요한 작업을 수행할 수 있도록 합니다.
RESTful 웹 서비스는 주로 JSON 혹은 XML 형식으로 데이터를 주고받으며, 모바일 앱, 웹 애플리케이션 등 다양한 클라이언트와의 통신에 사용됩니다.
'도구 및 기타 > 개발상식' 카테고리의 다른 글
| 트랜잭션 (Transaction) (1) | 2024.11.07 |
|---|---|
| @Controller와 @RestController (0) | 2023.07.21 |
| HTTP 상태 코드(응답) (0) | 2023.07.20 |
| HTTP 메소드 (요청) (0) | 2023.07.20 |
| 스프링 어노테이션 (0) | 2023.07.17 |