Web服务技术协议:REST与SOAP

时间:2022-09-27 04:10:21

Web服务技术就有SOAP(Simple Object Access Protocol,简单对象访问协议)和REST(Representational State Transfer,表示性状态转移)

REST: 一种采用标准URI进行调用的方案。客户端的应用通过URI来获取资源的表征。获得这些表征致使这些应用程序转变了其状态。如果你需要无状态的CRUD(Create/Read/Update/Delete,创建/读取/更新/删除)操作,那么应采用REST。

优点:

1. REST很容易理解

2. 只要是支持HTTP/HTTPS的客户端/服务器就支持它

3. 返回的结构可以采用(由开发者定义的)任何格式

缺点:

缺乏标准,因此只被看作是一种架构方法。

SOAP1.2:

SOAP在三个方面离不开XML(Extensible Markup Language,可扩展标记语言):SOAP信封(envelope)是基于XML的,它定义了消息里有什么以及如何处理它;一套用于数据类型的编码规则;过程调用和响应的规划。SOAP信封由传输协议(HTTP/HTTPS)发出,RPC(Remote Procedure Call,远程过程调用)得到执行,然后一个XML文档随SOAP信封返回。

如果应用需要上下文信息与对话状态管理,那么应采用SOAP。

优点:

1. 基于“通用”传输协议。REST目前基于HTTP/HTTPS;而SOAP可支持任何传输协议。

2.具备良好定义的协议,以及一套良好确立的规则

缺点:

由于XML较为冗长且解析费时,因此采用XML也成为一个弊端。