REST API

임성은·2022년 12월 2일
0

REST API

RESTful API는 두 컴퓨터 시스템이 인터넷을 통해 정보를 안전하게 교환하기 위해 사용하는 인터페이스입니다. 대부분의 비즈니스 애플리케이션은 다양한 태스크를 수행하기 위해 다른 내부 애플리케이션 및 서드 파티 애플리케이션과 통신해야 합니다. 예를 들어 월간 급여 명세서를 생성하려면 인보이스 발행을 자동화하고 내부의 근무 시간 기록 애플리케이션과 통신하기 위해 내부 계정 시스템이 데이터를 고객의 뱅킹 시스템과 공유해야 합니다. RESTful API는 안전하고 신뢰할 수 있으며 효율적인 소프트웨어 통신 표준을 따르므로 이러한 정보 교환을 지원합니다.

REST 성숙도 모델

  • 0단계 : HTTP 프로토콜을 사용하기만 해도 OK

  • 1단계 : REST API는 웹에서 사용되는 모든 데이터나 자원을 HTTP URI로 표현함
    -> 모든 자원은 개별 리소스에 맞는 Endpoint를 사용해야하고 요청하고 받는 자원에 대한 정보를 응답으로 전달해야함
    Endpoint 작성 시 리소스에 집중해 명사 형태의 단어로 작성하는 것이 바람직함
    요청에 따른 응답으로 리소스 전달 시 사용한 리소스 정보와 함께 리소스 사용에 대한 성공/실패 여부를 반환해야함

  • 2단계 : 이 단계까지 맞춰서 작성하면 잘 작성한 것이라고 한다.
    GET 메서드는 서버의 데이터를 변화시키지 않는 요청에 사용
    POST 메서드는 요청마다 새로운 리소스를 생성하고 PUT 메서드는 요청마다 같은 리소스를 반환 => 멱등(idempotent)성을 가지는 PUT과 그렇지 않은 POST는 구분해서 사용
    PUT과 PATCH 구분해서 사용

  • 3단계 : 3단계의 요청은 2단계와 동일하지만 응답에는 리소스의 URI를 포함한 링크 요소를 삽입하여 작성합니다.

Open API

오픈 API(Open Application Programming Interface, Open API, 공개 API) 또는 공개 API는 개발자라면 누구나 사용할 수 있도록 공개된 API를 말하며, 개발자에게 사유 응용 소프트웨어나 웹 서비스의 프로그래밍 적인 권한을 제공한다.[1][2] 반대말은 프라이빗 API(Private API)다. 쉽게 말하면, "하나의 웹 사이트에서 자신이 가진 기능을 이용할 수 있도록 공개한 프로그래밍 인터페이스가 오픈 API다"라고 정의할 수 있다


대한민국 정부에서는 공공데이터포털을 통해 도로명 주소 조회 서비스, 동네예보정보조회서비스등 오픈API 2,506건을 2018년 현재 운영 및 제공하고 있다.

또, 공개된 오픈API일지라도 데이타 사용 용량에 따라 비용을 지불해야 하는 경우가 있거나 완전히 무료일지라도 사용자가 회원가입을 통한 신원 확인 후 서비스 제공자로부터 공개키(또는 사용권한 토큰)을 별도로 발급받아 오픈API를 사용토록 장려함으로서 무분별한 데이터 남용을 막는 사례가 늘고 있다.

API Key

위에 오픈 API를 사용하려면 바로 사용할순 없다.
바로 API key를 발급받아야 사용할수있다.

profile
개발자의 길에 당차게 들어서다!!

0개의 댓글