답변:
API (Application Programming Interface)는 타사가 다른 코드와 인터페이스하는 코드를 작성할 수있는 수단입니다. 웹 서비스는 거의 항상 HTTP를 통해 작동하는 API 유형입니다 (SOAP와 같은 일부는 SMTP와 같은 대체 전송을 사용할 수 있지만). 공식 W3C 정의는 웹 서비스가 반드시 HTTP를 사용하지 않는 것이 언급하지만, 이것은 거의 항상의 경우와 별도의 명시 적 언급이없는 한 일반적으로 가정한다.
구체적으로 웹 서비스의 예는 SOAP , REST 및 XML-RPC를 참조하십시오 . 로컬 시스템에서 사용하기 위해 C로 작성된 다른 유형의 API의 예는 Linux 커널 API를 참조하십시오 .
프로토콜이 진행되는 한 웹 서비스 API는 거의 항상 HTTP를 사용하므로 (웹 부분) 네트워크를 통한 통신이 반드시 필요합니다. 일반적으로 API는 원하는 통신 수단을 사용할 수 있습니다. 예를 들어 Linux 커널 API는 인터럽트 를 사용 하여 사용자 공간에서의 호출을위한 API를 구성하는 시스템 호출을 호출합니다.
기본적으로 웹 서비스는 두 시스템 간의 통신 방법이며 API는 노출 된 계층으로, 무언가에 대해 프로그래밍 할 수 있습니다.
API를 가질 수 있으며 해당 API와 상호 작용하는 주요 방법은 웹 서비스를 사용하는 것입니다.
기술 정의 (Wikipedia 제공)는 다음과 같습니다.
API (application programming interface)는 응용 프로그램 구축을 지원하기 위해 라이브러리 및 / 또는 운영 체제 서비스에서 제공하는 루틴, 데이터 구조, 객체 클래스 및 / 또는 프로토콜 세트입니다.
웹 서비스 (또한 웹 서비스)는 W3C에 의해 "네트워크를 통한 상호 운용 가능한 기계 간 상호 작용을 지원하도록 설계된 소프트웨어 시스템"으로 정의됩니다.
API는 컴포넌트 A가 컴포넌트 B와 통신하는 방법을 정의하는 공개 된 인터페이스입니다.
예를 들어 Doubleclick에는 게시 된 Java API가있어 사용자가 데이터베이스 테이블을 조사하여 온라인 광고 캠페인에 대한 정보를 얻을 수 있습니다.
예 : GetNumberClicks 호출 (사용자 이름)
API를 구현하려면 Doubleclick .jar 파일을 클래스 경로에 추가해야합니다. 현지 통화입니다.
웹 서비스는 인터페이스가 WSDL을 통해 정의되는 API 형식입니다. 이것은 HTTP를 통한 인터페이스의 원격 호출을 허용합니다.
Doubleclick이 인터페이스를 웹 서비스로 구현 한 경우 Tomcat 내에서 실행중인 Axis2와 같은 것을 사용합니다.
원격 사용자는 웹 서비스를 호출합니다
예 : GetNumberClicksWebService (사용자 이름) 호출
GetNumberClicksWebService 서비스는 GetNumberClicks를 로컬로 호출합니다.
전체 형태 자체 인 API (Application Programming Interface)는 응용 프로그램에 유용한 기능을 제공하는 다른 응용 프로그램 인터페이스의 도움이나 지원으로 응용 프로그램을 프로그래밍 할 수있는 인터페이스를 제안합니다.
예를 들어 웹 사이트에 업데이트 된 환율을 표시하려면 환율과 동일한 데이터베이스를 정기적으로 업데이트하려는 경우를 제외하고 프로그래밍 할 타사 인터페이스가 필요합니다. 이 기능 세트는 다른 사용자와 이미 사용 가능하고 다른 사용자와 공유하려는 경우 이러한 상호 작용에 관심이있는 다른 사용자와 통신 할 엔드 포인트가 있어야 웹을 통해 웹에 배치 할 수 있습니다. 서비스. 이 끝점은 API에 대해 프로그래밍 할 수있는 응용 프로그램의 인터페이스 일뿐입니다.
http://en.wikipedia.org/wiki/Web_service를 확인하십시오 .
앞에서 언급 한 링크에서 Web API는 웹 2.0과 관련이있는 웹 서비스에서 개발 된 반면 SOAP 기반 서비스는 REST 기반 통신으로 대체됩니다. REST 서비스에는 XML, SOAP 또는 WSDL 서비스 API 정의가 필요하지 않으므로 이는 기존 웹 서비스와 크게 다릅니다.