API

weffa·2022년 3월 13일
0

API

API(Application Programming Interface)는 컴퓨터나 컴퓨터 프로그램들이 서로 상호작용하는 것을 도와주는 매개체로 볼 수 있다.

API 역할

  • 서버와 데이터베이스에 대한 창구
    - 허용된 사람들에게만 접근성을 부여한다
  • 프로그램과 기기의 원활한 통신
    - 프로그램과 기기가 데이터를 원활히 주고받도록 돕는다
  • 모든 접속 표준화
    - 기계나 운영체제 등과 상관없이 누구나 동일한 액세스를 얻을 수 있다

API 유형

  • private API
    - 개발자가 자체 제품과 서비스를 개선하기 위해 내부적으로 발행한 내부 API
  • public API
    - 모두에게 공개된 누구나 제한 없이 사용가능한 개방형 API
  • partner API
    - 데이터 공유에 동의하는 특정인들만 사용할 수 있는 API

API 종류

REST API

REST(Representational State Transfer)는 네트워크를 통해서 컴퓨터들끼리 통신할 수 있게 해주는 아키텍처 스타일이다.

REST는 해당 API를 사용하는 각각의 애플리케이션들이 모두 동일한 경로를 통해서 접속해야 한다.
REST는 서버에 URI를 이용해서 접근한다.
REST는 웹에 최적화 돼 있고 데이터 포맷이 JSON이기 때문에 브라우저들 간 호환성이 좋다.
REST는 HTTP와 JSON을 사용하기 때문에 페이로드의 무게를 가볍게 할 수 있다.
REST는 양단간(end-to-end) 보안성을 위해서 SSL을 지원하며 HTTPS 프로토콜을 이용할 수 있다.
REST는 서버와 느슨한 형태로 연결, REST 방식의 API에서는 클라이언트에서 해당 API가 필요하지 않다.

SOAP API

SOAP(Simple Object Access Protocol)는 프로토콜이며, 보안이나 메시지 전송 등에 있어서 REST보다 더 많은 표준들이 정해져있기 때문에 조금 더 복잡합니다. 따라서 은행용 모바일 앱처럼 보안 수준이 높아야 하거나, 신뢰할 수 있는 메시징 앱, 또는 ACID를 준수해야 하는 경우라면 SOAP 방식이 더욱 선호됩니다.

SOAP는 서비스 인터페이스를 이용해서 서버에 접근한다.
SOAP는 데이터 포맷으로 XML만 사용한다.
SOAP는 표준에 성공/반복 실행 로직 규정, SOAP API를 통해서 통신을 할 때 처음부터 끝까지 신뢰성을 제공한다.
SOAP는 ACID를 준수하기 때문에 데이터의 변형을 줄여준다.
SOAP는 WS-Security를 지원한다.

  • WS-Security는 전송 레벨에서 아주 뛰어나며 SSL보다도 조금 더 복잡하기 때문에 기업용 보안 도구에 통합하는데 보다 이상적이다.

SOAP는 서버와 긴밀하게 연결, SOAP 방식의 API에서는 상호작용을 시작할 때조차도 클라이언트에서 API에 관한 모든 정보들을 필요로 한다.


참고
API란?
SOAP REST 차이

0개의 댓글