В чем разница между веб-сервисом и API? Разница больше, чем протокол, используемый для передачи данных? Спасибо.
web-services
api
terminology
чипсы
источник
источник
Ответы:
API (интерфейс прикладного программирования) - это средство, с помощью которого третьи стороны могут писать код, который взаимодействует с другим кодом. Веб-сервис - это тип API, который почти всегда работает по HTTP (хотя некоторые, например SOAP, могут использовать альтернативные транспорты, например SMTP). Официальное определение W3C говорится , что Web - сервисы не обязательно использовать HTTP, но это почти всегда так , и, как правило , предполагается , если не указано иное.
В частности, примеры веб-служб см. В разделах SOAP , REST и XML-RPC . Пример API другого типа, написанного на C для использования на локальном компьютере, см. В API ядра Linux .
Что касается протокола, API веб-службы почти всегда использует HTTP (отсюда и веб-часть) и определенно включает в себя связь по сети. API в целом могут использовать любые средства связи, которые они пожелают. API ядра Linux, например, использует прерывания для вызова системных вызовов, составляющих его API, для вызовов из пространства пользователя.
источник
По сути, веб-сервис - это метод связи между двумя машинами, в то время как API - это открытый уровень, позволяющий программировать против чего-либо.
У вас вполне может быть API, и основным методом взаимодействия с этим API является веб-сервис.
Технические определения (любезно предоставленные Википедией):
API
Веб-сервис
источник
В общем смысле вебсервис IS 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 - это такой общий термин, поэтому веб-сервис - это интерфейс с функциональностью, обычно связанной с бизнесом, которую вы можете получить из сети по различным протоколам.
источник
Проверь это http://en.wikipedia.org/wiki/Web_service
Как упоминалось в ссылке, Web API - это разработка веб-сервисов, которая, скорее всего, относится к Web 2.0, тогда как сервисы на основе SOAP заменяются коммуникациями на основе REST. Обратите внимание, что для служб REST не требуются определения API-интерфейса служб XML, SOAP или WSDL, поэтому они существенно отличаются от традиционных веб-служб.
источник
Другой пример: API карты Google против веб-службы API направления Google, в то время как первый обслуживает (доставляет) на сайт файл javascript (который затем может использоваться как API для создания новых функций), второй - веб-сервис Rest, доставляющий данные ( в формате json или xml), который можно обрабатывать (но не использовать в смысле API).
источник