API和Web服务

Anonim

API与Web服务

API和Web服务充当通信手段。唯一的区别是Web服务有助于通过网络在两台机器之间进行交互。 API充当两个不同应用程序之间的接口,以便它们可以相互通信。 API是第三方供应商可以编写与其他程序轻松连接的程序的方法。 Web服务旨在具有以通常在Web服务描述语言(WSDL)中指定的机器可处理格式描述的接口。通常,“HTTP”是最常用的通信协议。 Web服务还使用SOAP,REST和XML-RPC作为通信手段。 API可以使用任何通信手段来启动应用程序之间的交互。例如,Linux内核API使用中断调用系统调用。

API准确定义了一个软件程序与另一个软件程序交互的方法。当此操作涉及通过网络发送数据时,Web服务就会出现。 API通常涉及从软件程序中调用函数。

对于Web应用程序,使用的API是基于Web的。电子表格和word文档等桌面应用程序使用不涉及Web服务的VBA和基于COM的API。诸如Joomla之类的服务器应用程序可以使用服务器中存在的基于PHP的API,其不需要Web服务。

Web服务仅仅是HTTP中包含的API。 API并不总是需要基于Web。 API包含一套完整的规则和规范,供软件程序遵循以便于交互。 Web服务可能不包含完整的规范集,有时可能无法执行完整API可能执行的所有任务。

API可以通过多种方式公开,包括:C / C ++编程语言中的COM对象,DLL和.H文件,Java中的JAR文件或RMI,HTTP上的XML,HTTP上的JSON等.Web使用的方法服务公开API严格通过网络。

摘要:

1.所有Web服务都是API,但所有API都不是Web服务。

2. Web服务可能无法执行API将执行的所有操作。

3. Web服务仅使用三种使用方式:SOAP,REST和XML-RPC

通信,而API可以使用任何风格进行通信。

4. Web服务始终需要网络才能运行,而API则不需要

一个运营网络。

5. API有助于直接与应用程序连接,而Web服务则是