SOAP结束了吗?

时间:2009-09-02 19:49:08

标签: web-services rest soap

在Google宣布他们最近删除了他们的SOAP API的“A well earned retirement for the SOAP Search API”后,我很好奇社区对2009年的SOAP的看法。我可以看到它用于远程处理和更详细的客户端 - 服务器无状态通信,但是对于更广泛的[Ajax]网络使用,它现在是多么重要吗?

让REST URL一劳永逸地删除了对SOAP和那种Web服务的需求吗?

4 个答案:

答案 0 :(得分:13)

SOAP就在这里 - 理所当然。

在企业环境中,自描述服务(在WSDL的帮助下),使用事务和可靠消息传递的能力是至关重要的。在“一天狂欢”之后,它们比跑步更重要。

REST有很好的用途 - 但它不能完全取代SOAP,也不应该。 REST非常适合轻量级通信 - 推特等。但是也有充分的理由去了解和了解SOAP。

在大多数环境中,SOAP目前拥有更好的工具支持 - 在REST具有可比性之前还需要一段时间。

SOAP允许机器可读的服务描述和服务发现 - REST没有这样的东西,你的REST服务可能 - 或者可能没有 - 被记录,并且记录你的REST服务的英文散文的质量差异很大。

是的,REST现在风靡一时 - 它确实让很多有趣的场景更容易处理。但我认为它还没有为“黄金时段,企业级”的使用做好准备。也许有一天 - 但不是今天。

答案 1 :(得分:13)

REST中没有任何内容表明当您需要发送复杂请求时,无法使用表单POST字段来PUT数据。如果你想尝试尽可能使它成为SOAPy,你甚至可以发布大块的大块XML。

IMHO SOAP只提供您从未需要的包装器。为我杀死它的方式是Axis和其他引擎将WSDL的存根编译到代码中的方式,然后每次向WSDL添加内容时它都会破坏消费者,即使所有内容都设计为向后兼容。永远休息。

答案 2 :(得分:7)

哦,如果只有SOAP死了。我可以向您保证,有些公司仍在尽快采用基于SOAP的RPC策略。

答案 3 :(得分:4)

正如您所说 - REST无法处理冗长的案例。

如果您可以告诉我如何通过RESTful Web服务获取任意数量的复杂参数,而不会达到URL长度限制,我很乐意听到它。

但是对于科学数据的复杂查询,我们需要的不仅仅是位置参数或键/值对。

我的预测是,在COBOL和Fortran之后的某个时间,SOAP不会消亡。