Web服务是指通过 Web 技术,将程序接口或功能按照一定规则封装成服务,并通过互联网进行透明化的调用。基于 HTTP 协议的 Web 服务被称作 Web Service。Web Service提供了一种跨编程语言、跨平台、跨组织间的数据交换的方式。相较于传统的Java RMI、Corba等技术,它的优点在于开放性、协议中立、可编程的、可组合的、基于标准,这使得 Web Service 成为一种典型的松耦合、分布式的系统架构。
那么 Web Service 具体是怎样的呢?它通常包括以下部分:
- WSDL(Web Services Description Language):Web 服务描述语言,对 Web 服务的功能、位置和调用方式进行描述;
- SOAP(Simple Object Access Protocol):简单对象访问协议,定义了消息的格式,以及消息的处理过程;
- UDDI(Universal Description, Discovery and Integration):通用描述、发现和集成,主要用于 Web 服务的注册、发现和查询。
例如,一个包含商家信息的数据库,如果需要将数据发布到互联网上,供其他应用程序调用。最简单的方法是直接将数据库信息全分享用,这样做是不合适的。通过 Web Service 技术,我们可以在服务器端封装好这个数据库,并提供查询 APIs。这些 APIs 被封装在一个 Web Service 中,供客户端调用。客户端无需知道这台服务器上的细节,只要按照 WSDL 文件给出的信息,以 SOAP 消息的格式来发送请求即可。这使得客户端和服务器端之间的调用变得极其简单。