web服务和API之间的区别是什么?差异是否超过了传输数据所使用的协议? 谢谢。


当前回答

API是一个已发布的接口,它定义了组件a如何与组件B通信。

例如,Doubleclick发布了一个Java API,允许用户查询数据库表以获得有关其在线广告活动的信息。

例如,调用GetNumberClicks(用户名)

要实现API,必须将双击.jar文件添加到类路径中。这是本地呼叫。

web服务是API的一种形式,其中接口是通过WSDL定义的。这允许通过HTTP远程调用接口。

如果Doubleclick将其接口实现为web服务,那么他们将在Tomcat中使用类似Axis2的东西。

远程用户将调用web服务

例如调用GetNumberClicksWebService(用户名)

GetNumberClicksWebService服务将在本地调用GetNumberClicks。

其他回答

基本上,webservice是两台机器之间的一种通信方法,而API是一个公开的层,允许你对某些东西进行编程。

你可以有一个API,而与该API交互的主要方法是通过web服务。

技术定义(维基百科提供)是:

API

应用程序编程接口(API)是库和/或操作系统服务提供的一组例程、数据结构、对象类和/或协议,以支持应用程序的构建。

网络服务

Web服务(也称为Web服务)被W3C定义为“一种旨在支持网络上可互操作的机器对机器交互的软件系统”。

把Web服务看作Web api。API现在是一个通用术语,因此web服务是功能的接口,通常与业务相关,您可以通过各种协议从网络获得它。

一般来说,web服务是一个基于HTTP的API。它们通常使用JSON或XML,但也有一些其他方法。

检查这个http://en.wikipedia.org/wiki/Web_service

正如链接所提到的,Web API是Web服务中的一种开发,它很可能与Web 2.0相关,而基于SOAP的服务则被基于REST的通信所取代。请注意,REST服务不需要XML、SOAP或WSDL服务api定义,因此这与传统web服务有很大不同。

API是基于代码的集成,而web服务是基于消息的集成,与具有WSDL等契约的可互操作标准进行集成。