什么是Web服务
一个松耦合、可复用的软件构件,封装了离散的功能,该功能是分布式的并且可以被程序访问。Web服务是通过标准互联网和基于XML的协议被访问的服务。
服务和软件构件之间的一个重要的区别是
- 服务应该总是独立的和松耦合的
- Web 服务没有“请求”接口
RESTful服务
RESTful的定义
REST是一种基于从服务器向客户端传输可识别资源的体系结构风格。这种风格作为一个在整体位于网络之下,并且是一个比SOAP/WSDL更简单的实现Web服务接口的方法
Restful与SOAP服务之间的区别
- RESTful 服务不是完全基于XML
RESTful 方法也存在问题:
- 当一个服务有着复杂的接口并且不是一个简单的资源,那么设计一系列RESTful服务来代表该服务的接口将变得困难。
- 并没有关于RESTful接口描述的标准,因此服务使用者必须依赖于非正式的文档来理解接口。
- 当使用RESTful服务时,必须实现你自己的基础设施,以便监视和管理服务质量和服务可靠性的基础设施。基于SOAP的服务有额外的基础设施支持标准