Web服务
来自站长百科
(重定向自Web services)
Web服务是Web service的缩写,是一种可以用来解决跨网络应用集成问题的开发模式,这种模式为实现“软件作为服务”提供了技术保障。而“软件作为服务”实质
上是一种提供软件服务的机制,这种机制可以在网络上暴露可编程接口,并通过这些接口来共享站点开放出来的功能。
Web服务的特点[ ]
标准的网络协议[ ]
客户端访问Web 服务只需要通过因特网标准协议,如HTTP或XML,以及SOAP,不需要专门的协议,
可以被XML语言详尽描述[ ]
提供Web服务的站点可以提供一个(或多个)该站点可以对外提供服务的描述文件,这个文件的内容可以被访问者理解。更进一步说,就是客户端可以从网络上直接得到代码!
Web服务的使用方式[ ]
远程过程调用[ ]
- WEB服务提供一个分布式函数或方法接口供用户调用,这是一种比较传统的方式。通常,在WSDL中对RPC接口进行定义(类似于早期的XML-RPC)。
- 尽管最初的WEB服务广泛采用RPC方式部署,但针对其过于紧密之耦合性的批评声也随之不断。这是因为RPC式WEB服务实质上是利用一个简单的映射,以把用户请求直接转
化成为一个特定语言编写的函数或方法。如今,多数服务提供商认定此种方式在未来将难有作为,在他们的推动下,WS-I基本协议集(WS-I Basic Profile)已不再支持远程过程调用。
面向服务架构[ ]
- 业界比较关注的是遵从面向服务架构(Service-oriented architecture,SOA)概念来构筑WEB服务。在面向服务架构中,通讯由消息驱动,而不再是某个动作(方法调
用)。这种WEB服务也被称作面向消息的服务。
- SOA式Web服务得到了大部分主要软件供应商以及业界专家的支持和肯定。作为与RPC方式的最大差别,SOA方式更加关注如何去连接服务而不是去特定某个实现的细节。
WSDL定义了联络服务的必要内容。
表述性状态转移[ ]
- 表述性状态转移式(Representational state transfer,REST)Web服务类似于HTTP或其他类似协议,它们把接口限定在一组广为人知的标准动作中(比如HTTP的GET、
PUT、DELETE)以供调用。此类WEB服务关注与那些稳定的资源的互动,而不是消息或动作。
- 此种服务可以通过WSDL来描述SOAP消息内容,通过HTTP限定动作接口;或者完全在SOAP中对动作进行抽象。