RESTful API란 무엇인가
RESTful API는 두 컴퓨터 시스템이 인터넷을 통해 정보를 안전하게 교환하기 위해 사용하는 인터페이스입니다
대부분의 비즈니스 애플리케이션은 다양한 태스크를 수행하기 위해 다른 내부 애플리케이션 및 서드 파트 애플리케이션과 통신해야 합니다.
예를 들어 월간 급여 명세서를 생성하려면 인보이스 발행을 자동화하고 내부의 근무 시간 기록 애플리케이션과 통신하기 위해 내부계정 시스템이 데이터를 고객의 뱅킹 시스템과 공유해야 합니다.
RESTful API는 안전하고 신뢰할 수 있으며 효율적인 소프트웨어 통신 표준 을 따르므로 이러한 정보 교환을 지원합니다.
즉, REST 에는 안전하고 신뢰할 수 있으며 효율적인 소프트웨어 통신 표준 이라는 의미가 내포 되어 있을 거라는 짐작을 할 수 있겠죠?
REST란 무엇인가?
Representational State Transfer(REST)는 API 작동 방식에 대한 조건을 부과하는 소프트웨어 아키텍쳐 라고 합니다.
역사를 거슬러 2010년 이전 까지만 해도 Server Side에서 데이터를 전달해주는 Client 프록램의 대상은 PC브라우저로 그 대상이 명확했다고 합니다.
그러다보니 JSP, ASP, PHP 등을 이용한 웹페이지를 구성하고 작업을 진행하면 됐죠.
하지만 스마트 기기들의 빠른 성장을 하면서 TV, 스마트폰, 테블릿 등 Client 프로그램이 다양화 되면서 그에 맞추어 Server를 일일이 만든다는 것이 비효율적인 일이 되버렸습니다.
이런과정에서 개발자들은 Client Side를 고려하지 않고 메시지 기반 XML, JSON과 같은 Client 에서 바로 객체로 치환 가능한 형태의 데이터 통신을 지향하게 되면서 Server와 Client의 역할을 분리하게 되었다고 합니다.
REST API 탄생배경:
REST API의 등장은 2000년도에 HTTP의 주요 저자 중 한 명인 로이 필딩이 그 당시 웹 설계의 우수성에 비해 제대로 활용이 되어지지 않는 모습에 안타까워 웹의 장점을 활용할 수 있는 Architecture로써 REST를 발표했다고 한다.
REST 구성
GET
,POST
,PUT
,Delete
와 같은 메서드를 제공한다.REST 규칙
슬래시 구분자(/)는 계층관계를 나타내는데 사용한다.
URI 마지막 문자로 슬래시(/)를 포함하지 않는다
하이픈 ( - )은 URI 가독성을 높이는데 사용한다.
밑줄 ( _ )은 URI에 사용하지 않는다.
URI 경로에는 소문자가 적합하다.
GET
: http://restapi.exam.com/orders/2/Accept: image/jpg
<정리>
https://aws.amazon.com/ko/what-is/restful-api/
https://velog.io/@somday/RESTful-API-%EC%9D%B4%EB%9E%80