Вопрос

В чем разница между веб-сервисом и API?Разница больше, чем протокол, используемый для передачи данных?Спасибо.

Это было полезно?

Решение

API (интерфейс прикладного программирования) — это средство, с помощью которого третьи лица могут писать код, взаимодействующий с другим кодом.Веб-служба — это тип API, который почти всегда работает через HTTP (хотя некоторые, например SOAP, могут использовать альтернативные транспортные средства, например SMTP).А официальное определение W3C упоминает, что веб-службы не обязательно используют HTTP, но это почти всегда так и обычно предполагается, если не указано иное.

Конкретные примеры веб-сервисов см. МЫЛО, ОТДЫХ, и XML-RPC.Пример другого типа API, написанного на C для использования на локальном компьютере, см. API ядра Linux.

Что касается протокола, API веб-сервиса почти всегда использует HTTP (отсюда и веб-часть) и определенно предполагает связь по сети.API в целом могут использовать любые средства связи, которые пожелают.Например, API ядра Linux использует Прерывания вызывать системные вызовы, составляющие его API, для вызовов из пользовательского пространства.

Другие советы

По сути, веб-сервис — это метод связи между двумя машинами, а API — это открытый уровень, позволяющий вам программировать что-либо.

У вас вполне может быть API, и основной метод взаимодействия с этим API — через веб-сервис.

Технические определения (любезно предоставлено Википедией):

API

Интерфейс прикладного программирования (API) — это набор подпрограмм, структур данных, классов объектов и/или протоколов, предоставляемых библиотеками и/или службами операционной системы для поддержки создания приложений.

Веб-сервис

Веб-сервис (также веб-сервис) определяется W3C как «программная система, предназначенная для поддержки совместимого межмашинного взаимодействия по сети».

В общем смысле веб-сервис ЯВЛЯЕТСЯ API через HTTP.Они часто используют JSON или XML, но есть и другие подходы.

API — это опубликованный интерфейс, который определяет, как компонент A взаимодействует с компонентом B.

Например, у Doubleclick есть опубликованный Java API, который позволяет пользователям запрашивать таблицы базы данных, чтобы получить информацию о своей рекламной кампании в Интернете.

напримервызвать GetNumberClicks (имя пользователя)

Чтобы реализовать API, вам необходимо добавить файл Doubleclick .jar в путь к классам.Звонок местный.

Веб-сервис — это форма API, в которой интерфейс определяется посредством WSDL.Это позволяет удаленно вызывать интерфейс через HTTP.

Если бы Doubleclick реализовал свой интерфейс как веб-сервис, они бы использовали что-то вроде Axis2, работающее внутри Tomcat.

Удаленный пользователь вызовет веб-сервис

напримервызовите GetNumberClicksWebService (имя пользователя)

и служба GetNumberClicksWebService будет вызывать GetNumberClicks локально.

API (интерфейс прикладного программирования), полная форма сама по себе предполагает, что это интерфейс, который позволяет вам программировать для вашего приложения с помощью или при поддержке какого-либо другого интерфейса приложения, который предоставляет какую-то функциональность, полезную для вашего приложения.

Например, для отображения обновленных курсов обмена валют на вашем веб-сайте потребуется какой-либо сторонний интерфейс для программирования, если только вы не планируете иметь собственную базу данных с курсами валют и регулярными ее обновлениями.Этот набор функций уже доступен кому-то другому, и когда они хотят поделиться им с другими, им нужна конечная точка для связи с другими, кто заинтересован в таком взаимодействии, чтобы они развернули его в сети с помощью веб-интерфейса. услуги.Эта конечная точка — не что иное, как интерфейс их приложения, для которого вы можете программировать, следовательно, через API.

API — это интеграция на основе кода, а веб-сервис — это интеграция на основе сообщений с совместимыми стандартами, имеющими контракт, такой как WSDL.

Думайте о веб-сервисе как о веб-API.API сейчас является настолько общим термином, что веб-сервис — это интерфейс к функциональности, обычно связанной с бизнесом, к которому вы можете получить доступ из сети по различным протоколам.

Проверь это http://en.wikipedia.org/wiki/Web_service

Как упоминалось в ссылке, веб-API — это разработка веб-сервисов, которая, скорее всего, относится к Web 2.0, тогда как службы на основе SOAP заменяются связью на основе REST.Обратите внимание, что службам REST не требуются определения XML, SOAP или WSDL-API службы, поэтому это существенно отличается от традиционных веб-служб.

другой пример:API карты Google против веб-службы API направления Google, в то время как первый обслуживает (доставляет) файл javascript на сайт (который затем можно использовать в качестве API для создания новых функций), последний представляет собой веб-службу Rest, доставляющую данные (в формате json или xml), который можно обрабатывать (но не использовать в смысле API).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top