与SOAP不同,为什么REST没有WSDL

时间:2013-04-09 16:12:39

标签: web-services rest soap wsdl

对于SOAP Web服务,有一个规范,所有请求/响应必须遵循。此规范采用WSDL文档的形式。但是对于REST Web服务,为什么没有这样的规范或WSDL?这是否使REST更容易受到运行时异常的影响,因为我们没有遵循任何规范?

3 个答案:

答案 0 :(得分:19)

有许多方法可以像WSDL for SOAP一样定义RESTful API:

您可以在my blog post找到更多信息。

答案 1 :(得分:15)

REST实际上只在资源上使用HTTP谓词(GETPUTPOSTDELETE,...)。资源上的所有操作都应该以这种方式表示。当您无法以适合其他三种方式的方式表达业务逻辑时,POST被用作全部捕获。这就是为什么REST服务没有真正的WSDL,因为你在资源上只有4个方法。

但你还有the possibility to describe a REST web service with WSDL 2.0

答案 2 :(得分:5)

SOAP是一个协议 REST是一种架构。

  

在许多参考文献中,您将看到REST和SOAP都被提及为   竞争对手。事实并非如此。 SOAP实际上是一种协议,而不是一种协议   建筑风格。可以与之比较的REST是SOA和RPC。   这三个都是Web服务样式的示例,每个样式都有自己的样式   概念的焦点。 RPC专注于运营,围绕SOA   消息和围绕资源的REST。 (ref

所以对于SOAP,写了WSDL document standards。但是对于REST,没有标准文档,但有许多最佳实践如http://jsonapi.org