2

从昨天开始学习java web services,看到很多博客还在困惑,哪个服务最适合实践。要么SOAP or Rest?请建议我请求和响应的最佳服务方法。

谢谢你。

4

5 回答 5

1

没有最好,只有选择。选择满足您需求的产品并继续使用它。如果您不知道什么能满足您的需求,或者干脆选择一个。

REST 是一种基于 HTTP 的样式。它需要您可能没有的知识水平。我建议从 SOAP 开始,因为它得到了很好的工具支持。一旦你适应了,就学习 REST。

于 2013-06-19T09:56:12.490 回答
1

我认为这篇文章可以帮助您:何时使用休息或肥皂

就我个人而言,我总是使用 SOAP,因为它使用 XML 来传输信息,并且很容易理解您在通信中使用的数据的结构。Rest 并没有完全可以阅读的格式,因此它使事情变得更难理解。

如果您刚刚开始学习 Web 服务,我认为您应该使用 SOAP

于 2013-06-19T10:02:47.300 回答
0

好吧,REST 比 SOAP 更常用(大约 70% 的 web 服务,但我不知道这些数字来自哪里)。所以如果你想成为一名专业的开发人员,学习 REST 可能会更有趣。

于 2013-06-19T09:59:15.900 回答
0

多年来,这个问题已在 SO 上多次提出。您可以在 Java 中的 SOAP 和 RESTful Web 服务之间的主要区别WSDL 与 REST 优缺点Restful 与其他 Web 服务之间找到答案

于 2013-06-19T09:59:57.127 回答
0

我在 SO 上找到的最佳答案

许多大玩家都使用这两种方法。这是一个偏好问题。我的首选是 REST,因为它更易于使用和理解。

肥皂:

  • SOAP 在 HTTP 或有时 TCP/IP 之上构建 XML 协议。
  • SOAP 描述函数和数据类型。
  • SOAP 是 XML-RPC 的继承者,并且非常相似,但描述了一种标准的通信方式。
  • 几种编程语言都对 SOAP 提供原生支持,您通常向其提供 Web 服务 URL,并且无需特定代码即可调用其 Web 服务功能。
  • 必须首先将发送的二进制数据编码为 base64 编码等格式。
  • 有几个与之相关的协议和技术:WSDL、XSD、SOAP、WS-Addressing

表征状态转移(REST):

  • REST 不需要通过 HTTP,但我在下面的大部分观点都会有 HTTP 偏见。
  • REST 是非常轻量级的,它说等一下,我们不需要 SOAP 创建的所有这些复杂性。
  • 通常使用普通的 HTTP 方法而不是描述所有内容的大型 XML 格式。例如,要使用 HTTP GET 获取资源,使用 HTTP PUT 将资源放在服务器上。要删除服务器上的资源,请使用 HTTP DELETE。
  • REST 非常简单,因为它使用 HTTP GET、POST 和 PUT 方法来更新服务器上的资源。
  • REST 通常最好与面向资源的架构 (ROA) 一起使用。在这种思维模式下,一切都是资源,您将在这些资源上进行操作。
  • 只要你的编程语言有一个 HTTP 库,而且大多数都有,你就可以很容易地使用 REST HTTP 协议。
  • 二进制数据或二进制资源可以根据他们的请求简单地交付。

在 google 上有无休止的关于 REST 与 SOAP 的争论

我最喜欢的是这个

于 2013-06-19T10:02:08.010 回答