1. RESTful API란?
Representational State Transfer
API시스템을 구현하기 위한 아키텍처 중에 가장 널리 사용되는 형식
비싼 툴이 필요없어서 많이 사용
진입장벽이 낮음
웹상에서 사용되는 여러 리소스를 HTTP URI로 표현하고 그 리소스에 대한 행위를 HTTP Method로 정의하는 방식. 즉, 리소스(HTTP URI로 정의된)를 어떻게 한다(Method + Paayload)를 구조적으로 깔끔하게 표현.
2. RESTful API설계 규칙?
- URI 정보를 명확하게 표현
resource는 명사를 사용(ex. GET /user/1 => GET /users/1)
- resource에 대한 행위를 HTTP Method(GET,POST,PUT,DELETE)로 표현
URI에 HTTP Method가 포함되면 안됨
URI에 동사가 포함되면 안됨
- resource사이에 연관관계가 있는 경우
/리소스/고유ID/관계 있는 리소스
- 파일의 경우 payload의 포맷을 나타내기 위한 파일 확장자를 URI에 포함시키지 않음
3. Path parameter, Query parameter
4. RESTful하지못한 API 설계 예시
5. Status Code