Rest란? (REpresentational State Transfer)
웹에 존재하는 모든 자원(ex. 이미지, 동영상, 데이터)에 고유한 URI를 부여하여 주소를 지정하는 규칙이다.
Restful API는 REST 특징을 지키면서 API를 제공한다는 의미이다.
- url보다 큰 개념
- 해당 사이트의 특정 자원의 위치를 나타내는 유일한 주소
Restful API 장점
- self-descriptiveness
- 그 자체만으로 API의 목적이 쉽게 이해된다.
설계 규칙
- URI 정보 명확하게 표기
- resource는 명사를 사용
- resource에 대한 행위를 HTTP Method로 표현한다.
- URI에 동사가 포함되서는 안된다.
- uri는
/
구분자를 사용하여 자원의 계층 관계를 나타내는데 사용한다.
- URI 마지막 문자로
/
를 포함하지 않는다.
- 불가피하게 URI가 길어지는 경우
-
를 사용하여 가독성을 높인다.
ex: GET user/1/profile-photo
_
는 사용하지 않는다.
- URI 경로에는 대문자사용을 피하도록 규정하고 있다.
- 파일의 경우 payload의 포맷을 나타내기 위한 파일 확장자를 URI에 포함시키지 않는다.
path parameter
Query parameter
- 0번째부터 100번째까지의 물품을 1페이지에 나타낸다.
path parameter vs Query parameter
- Queryparameter -> 필터링,sorting,searching
path parameter = 없는 것을 검색 하면 404
쿼리 파라미터 = 없는 것을 검색하면 빈 리스트 출력