В чем разница между веб-сервисом и API? Является ли разница больше, чем протокол, используемый для передачи данных? Благодарю.
API против Webservice
Ответ 1
API (интерфейс прикладного программирования) - это способ, с помощью которого третьи стороны могут писать код, который взаимодействует с другим кодом. Веб-служба - это тип API, который почти всегда работает через HTTP (хотя некоторые, например SOAP, могут использовать альтернативные транспорты, например SMTP). В официальном определении W3C упоминается, что веб-службы не обязательно используют HTTP, но это почти всегда так, и обычно предполагается, если не указано иное.
Примеры веб-сервисов, например, см. SOAP, REST и XML-RPC. Для примера другого типа API, написанного на C для использования на локальной машине, см. API ядра ядра.
Что касается протокола, API веб-сервиса почти всегда использует HTTP (следовательно, веб-часть) и определенно включает в себя связь по сети. API в целом может использовать любые средства связи, которые они хотят. Например, API ядра Linux использует Прерывания для вызова системных вызовов, которые включают его API для вызовов из пользовательского пространства.
Ответ 2
В принципе, веб-сервис - это способ связи между двумя машинами, в то время как API - открытый слой, позволяющий вам программировать что-то.
У вас вполне может быть API, и основной способ взаимодействия с этим API - через webservice.
Технические определения (любезно предоставлены Википедии):
API
Интерфейс прикладного программирования (API) представляет собой набор подпрограмм, структур данных, классов объектов и/или протоколов, предоставляемых библиотеками и/или службами операционной системы, для поддержки построения приложений.
Веб-сервис
Веб-сервис (также веб-сервис) определяется W3C как "программная система, предназначенная для поддержки взаимодействия между машинами и машинами в сети"
Ответ 3
В общем смысле вебсервис IS API через HTTP. Они часто используют JSON или XML, но есть и другие подходы.
Ответ 4
API - это опубликованный интерфейс, который определяет, как компонент A связывается с компонентом B.
Например, Doubleclick имеет опубликованный Java API, который позволяет пользователям опросить таблицы базы данных, чтобы получить информацию об их рекламной кампании в Интернете.
например. вызов GetNumberClicks (имя пользователя)
Чтобы реализовать API, вы должны добавить файл Doubleclick.jar в свой путь к классу. Вызов локальный.
Веб-служба - это форма API, где интерфейс определяется с помощью WSDL. Это позволяет удаленный вызов интерфейса через HTTP.
Если Doubleclick реализовал свой интерфейс как веб-сервис, он будет использовать что-то вроде Axis2, работающего внутри Tomcat.
Удаленный пользователь вызовет веб-службу
например. вызов GetNumberClicksWebService (имя пользователя)
и служба GetNumberClicksWebService будет локально вызывать GetNumberClicks.
Ответ 5
API (интерфейс прикладного программирования), сама полная форма предполагает, что его интерфейс, который позволяет вам программировать для вашего приложения с помощью или поддержкой какого-либо другого интерфейса приложения, который предоставляет какую-то функциональность, полезную для вашего приложения.
Например, если показывать обновленные курсы обмена валют на вашем веб-сайте, вам понадобится сторонний интерфейс для программирования, если вы не планируете иметь свою собственную базу данных с курсами валют и регулярными обновлениями к тому же. Этот набор функциональных возможностей уже доступен с некоторыми другими, и когда они хотят поделиться им с другими, у них должна быть конечная точка для связи с другими, которые заинтересованы в таких взаимодействиях, поэтому они развертывают ее в Интернете с помощью веб- Сервисы. Эта конечная точка - не что иное, как интерфейс их приложения, который вы можете запрограммировать против API.
Ответ 6
API - это интеграция на основе кода, в то время как веб-сервис представляет собой интеграцию на основе сообщений с совместимыми стандартами, имеющими контракт, такой как WSDL.
Ответ 7
Подумайте о веб-сервисе как веб-ави. API теперь является таким общим термином, поэтому веб-служба является интерфейсом к функциональности, обычно связанной с бизнесом, которую вы можете получить в сети по различным протоколам.
Ответ 8
Отметьте http://en.wikipedia.org/wiki/Web_service
Как упоминалось в ссылке, Web API - это разработка веб-сервисов, которая, скорее всего, относится к Web 2.0, тогда как службы на основе SOAP заменяются сообщениями на основе REST. Обратите внимание, что службы REST не требуют определений API-служб XML, SOAP или WSDL, поэтому это существенно отличается от традиционного веб-сервиса.
Ответ 9
еще один пример: google map api vs google direction api web service, в то время как первый служит (доставляет) javascript файл на сайт (который затем можно использовать как api для создания новых функций), более поздняя веб-служба Rest предоставление данных (в формате json или xml), которые могут обрабатываться (но не используются в смысле api).