Ответ 1
Веб-сервис - это просто API в одежде HTTP.
В соответствии с моими знаниями api и веб-службы используются для извлечения данных с других веб-сайтов.
Какая разница между ними?
Любая помощь!
EDIT
Может кто-нибудь объяснить это с помощью надлежащего примера?
Что такое twitter и facebook api? Можем ли мы сказать, что это просто функция или веб-службы для доступа к их данным.
Веб-сервис - это просто API в одежде HTTP.
Веб-сервис - это нечто, переданное через Интернет для прямого использования другим компьютером (а не человеком).
API - это интерфейс прикладного программирования. Приложение веб-сайта может выставить API через веб-службу. Однако настольные приложения, такие как Excel или Word, имеют API-интерфейсы, которые не имеют никакого отношения к веб-интерфейсу (у них есть API-интерфейсы VBA и COM).
Иначе серверное приложение (например, Joomla) может иметь API на основе PHP, который используется с сервера на сервере, т.е. веб-сервис не обязательно задействован.
Все веб-службы являются API-интерфейсами, но не все API-интерфейсы являются веб-службами. Один из них является подмножеством другого.
API не обязательно должен быть веб-сайтом.
Веб-службы также могут не выполнять все операции, которые можно было бы ожидать от полного API.
API (интерфейс прикладного программирования) - это список методов и классов, предоставляемых программистом для использования другими программистами, поэтому, например, если вы используете Twitter или Facebook API в своих программах, вы можете заставить его сотрудничать с Twitter и Facebook и делают много полезных вещей.: -)
Существует много способов разоблачения API (JAR файлов или RMI в Java,.net Assemblies, COM-объектах, DLL и .H файлах в C/С++, JSON через HTTP, XML через HTTP, много домашних методов).
Веб-службы - это еще один способ разоблачения API, в этом случае фактическое выполнение открытых методов выполняется не на вашем компьютере, а на другом компьютере в Интернете (в Интернете - отсюда и название "WebServices" ).
Веб-сервис можно рассматривать как тип API. Но на данный момент вы должны забыть об этом и просто сосредоточиться на том, чтобы узнать, что такое API на самом деле; точное определение методов взаимодействия с частью программного обеспечения. Иногда это связано с отправкой данных по сети, но обычно мы говорим о функциях, которые могут быть вызваны из программы.
Например, в Ruby есть функция, называемая FileUtils.rm
. Это API; когда вы вызываете функцию из Ruby script, она всегда выглядит одинаково. Затем выполняется реализация API; что код, который фактически удаляет файл, может выглядеть совершенно по-другому в каждой реализации Ruby, но вам (как правило) это не заботит, поскольку вы имеете дело только с Ruby API.
Веб-сервисы, доступные через Интернет. Вы можете получить информацию, не имея на самом деле классов, или знаете, как это работает с использованием протоколов HTTP и soap.
API - это своего рода библиотека (набор классов), вы можете использовать доступные в ней функции для выполнения некоторых действий в вашем приложении.
Ознакомьтесь с входом wikipedia в веб-интерфейсе API http://en.wikipedia.org/wiki/Api#Web_APIs.
Это хорошо написано, хотя в значительной степени согласуется с тем, что говорят другие.
API, открытые через Интернет, - это веб-службы
Все веб-службы являются API-интерфейсами, но все API-интерфейсы не являются веб-службами.
Веб-службы могут не выполнять все операции, выполняемые API.