- WebGIS原理及开发:基于开源框架的WebGIS技术
- 张发勇等主编
- 486字
- 2024-05-14 09:58:40
1.1.3 从SOAP发展为REST
在Web服务发展的初期,XML格式消息得到了广泛的应用。XML格式消息的第一个主要用途是应用于XML远程过程调用(XML-Remote Procedure Call, XML-RPC)协议。在XML-RPC协议中,客户端发送的特定消息中必须包括名称、运行服务的程序,以及输入参数。
为了标准化,跨平台又产生了基于简单对象访问协议(Simple Object Access Protocol, SOAP)的消息通信模型。SOAP在XML-RPC协议的基础上,使用标准的XML描述了RPC的请求信息(URI、类、方法、参数、返回值)。XML-RPC协议只能使用有限的数据类型和一些简单的数据结构,SOAP能支持更多的数据类型和数据结构。SOAP的优点是跨语言,非常适合异步通信和针对松耦合的C/S架构,缺点是必须在运行时做很多检查。
随着时间的推移和SOAP的推广应用,人们很快发现其实已经存在一个最开放、最为通用的应用协议,那就是HTTP。虽然使用SOAP的确让进程间通信变得简单易用,但并不是每个厂商都愿意升级自己的系统来支持SOAP,而且SOAP的解析也不是支持所有编程语言的。HTTP正好完美地解决了这个问题,因此可以设计一种使用HTTP来完成服务端与客户端通信的方法,于是REST(Representational State Transfer)应运而生。REST采用简单的URL来代替一个对象,其优点是轻量、可读性较好且不需要其他类库的支持,其缺点是URL可能很长且不容易阅读。