为什么REST没有象SOAP一个WSDL(Why REST does not have a WSDL

2019-08-21 00:15发布

对于SOAP Web服务有其所有的请求/响应必须遵循的规范。 本说明书是WSDL文档的形式。 然而,对于REST Web服务,为什么会出现这样的不规范或WSDL? 这是否让REST更容易运行时异常,因为我们没有遵循任何规范?

Answer 1:

REST真的只使用HTTP动词( GETPUTPOSTDELETE上的资源,...)。 对资源的所有操作都应该表示的方式。 POST作为一个包罗万象的,因为当你不能在适合到其他三个的方式表达你的业务逻辑。 这就是为什么没有真正的REST服务的WSDL因为你永远只能对资源的4种方法。

不过你还是要描述与WSDL 2.0 REST Web服务的可能性 。



Answer 2:

有一堆的方式来定义一个RESTful API就像WSDL对SOAP:

  • 谷歌发现服务格式 。
  • Mashery IODocs 。
  • WADL 。
  • 扬鞭 。
  • 蜂房 。

您在这里可以找到更多信息我的博客文章 。



Answer 3:

SOAP是一个协议。
REST是一种体系结构。

在许多文献中,你会看到REST和SOAP都提到竞争对手。 这是不正确的。 SOAP实际上是一个协议,而不是一个建筑风格。 REST什么可以比较反对是SOA和RPC。 所有这三个都是网络服务样式的示例,每个都有自己的概念焦点。 RPC的重点是围绕业务,围绕SOA的消息,和REST周围的资源。 ( REF )

因此,对于SOAP,写了WSDL文档标准 。 但对于REST还没有一个标准的文件,但有很多优秀的做法是这样http://jsonapi.org



文章来源: Why REST does not have a WSDL unlike SOAP