SOAP是一种基于XML的消息协议,而REST是一种架构风格

时间:2013-06-05 12:01:27

标签: web-services rest soap jax-ws jax-rs

在解决SOAP和REST之间的差异时,有一点

SOAP是一种基于XML的消息协议,而REST是一种架构风格

我无法理解的是,REST的意思是建筑风格???

请帮忙。

谢谢, 维尼特

2 个答案:

答案 0 :(得分:1)

这实际上是一个非常普遍的问题,我不得不面对自己的问题。

有两种Web服务体系结构:代表性状态传输(REST)和远程过程调用(RPC)。维基百科对archtecure结构的定义是:

“术语软件架构直观地表示软件系统的高级结构。它可以定义为推理软件系统所需的结构集合,包括软件元素,它们之间的关系,以及元素和关系的属性。“

很难进一步明确它的含义。你要么得到它,要么得不到。

它们之间的基本区别在于REST使用已构建Web的已有技术,而RPC则添加了额外的抽象层来定义通信。通常,REST是简单,轻量级的WS,但没有正式的通信规范,而RPC很重,有点复杂,但具有正式的通信规范。

现在,对于这些架构的实现(基本上是通信协议)的示例:

RESTful - 显然使用REST架构

SOAP - 使用RPC架构

答案 1 :(得分:0)

因为它基于两种建筑风格 1.分层的,按需代码的,客户端缓存的无状态服务器(本身就是一个组合) 2.统一界面

术语软件架构表示用于选择,定义或设计

的一组实践

在REST中,选择数据传输模式以及我们实现它的方式更加灵活,而不像SOAP那样只需要以XML格式发送数据。

如果我们使用RESTful,数据传输模式可以是JSON,XML,简单文本等。