【发布时间】:2012-06-14 02:35:09
【问题描述】:
我目前发现类似的情况是两者都使用互联网协议 (HTTP) 在消费者和提供者之间交换数据。
区别在于:
- SOAP 是一种基于 XML 的消息协议,而 REST 是一种架构风格
- SOAP 使用 WSDL 在消费者和提供者之间进行通信,而 REST 仅使用 XML 或 JSON 来发送和接收数据
- SOAP 通过调用 RPC 方法调用服务,REST 只是简单地通过 URL 路径调用服务
- SOAP 不返回人类可读的结果,而 REST 结果可以通过纯 XML 或 JSON 读取
- SOAP 不只是通过 HTTP,它还使用其他协议,例如 SMTP、FTP 等,REST 仅通过 HTTP
这就是我所知道的它们之间的区别。谁能纠正我并添加更多内容。
【问题讨论】:
-
它们是无法比较的,至少因为 SOAP 是一种协议,而 REST 是一个根本没有定义规范的概念。没有什么能阻止人们编写与 REST 兼容的 SOAP Web 服务。
-
(1) "SOAP 是一种基于 XML 的消息协议" (2) "SOAP 不返回人类可读的结果" -- - 结论:XML 不是人类可读的。但显然……公平地说其中一个前提一定是错误的?
标签: web-services rest soap