API란?
: 프로그램 간에 상호작용하기 위한 매개체
: 클라이언트의 요청을 받아 서버에 전달하고, 서버의 결과물을 클라이언트에 전달
REST(Representational State Transfer) APIfks?
: URL의 설계 방식
: 자원(데이터)를 이름으로 구분해 자원의 상태를 주고받는 API 방식
REST API 특징
1) 서버/클라이언트 구조
2) 무상태
3) 캐시 처리 가능
4) 계층화
5) 인터페이스 일관성
REST API 장점
1) 무슨 행동을 하는 API인지 명확하게 파악 가능 (즉, 주소와 메서드를 보고 요청 내용 파악 가능)
2) 상태가 없어 클라이언트와 서버의 역할이 명확히 분리
3) HTTP 표준을 사용하는 모든 플랫폼에 사용 가능
REST API 단점
1) HTTP 메서드(CRUD) 방식 개수 제한 존재
2) 공식적으로 제공되는 표준 규약이 존재하지 않음
REST API 사용법
규칙1. URL에는 동사를 사용하지 않고 자원을 표시
/articles/1 | 적합 | 동사가 없으며, 1번을 가져온다는 의미가 명확 |
/articles/show/1 /show/articles/1 |
부적합 | 동사가 존재 |
규칙2. 동사는 HTTP 메서드로
HTTP 메서드란?
: 서버에 요청을 하는 방법
: POST, GET, PUT, DELETE로 CRUD(CREATE, READ, UPDATE, DELETE) 역할을 담당
: CRUD는 URL에 입력하는 값이 아닌 내부적으로 처리하는 방식을 정하는 것
'학습 기록 > 스프링 부트3 백엔드 개발자 되기[자바편]' 카테고리의 다른 글
[05장.4] 1. 스프링 데이터와 스프링 데이터 JPA (0) | 2023.09.05 |
---|---|
[05장.3] 3. 엔티티 상태 (0) | 2023.09.04 |
[05장.3] 2. 영속성 컨텍스트 (0) | 2023.09.04 |
[05장.3] 1. JPA와 Hibernate, Entity (1) | 2023.09.04 |
[05장.2] ORM(Object-relation mapping) (0) | 2023.09.01 |