对于 SOAP Web 服务,有一个所有请求/响应都必须遵循的规范。该规范采用 WSDL 文档的形式。但是对于 REST Web 服务,为什么没有这样的规范或 WSDL?这是否会使 REST 更容易受到运行时异常的影响,因为我们没有遵循任何规范?
问问题
45844 次
3 回答
15
REST 实际上只在资源上使用 HTTP 动词 ( GET
, PUT
, POST
, DELETE
, ...)。对资源的所有操作都应该以这种方式表示。POST
当您无法以适合其他三种方式表达您的业务逻辑时,它被用作全部。这就是为什么 REST 服务没有真正的 WSDL 的原因,因为您在资源上只有 4 个方法。
但是您仍然可以使用 WSDL 2.0 描述 REST Web 服务。
于 2013-04-09T16:15:23.730 回答
6
SOAP
是一个协议。
REST
是一种架构。
在许多参考资料中,您会看到 REST 和 SOAP 都被视为竞争对手。那不是真的。SOAP 实际上是一种协议,而不是一种架构风格。REST 可以与之比较的是 SOA 和 RPC。这三个都是 Web 服务样式的示例,每个都有自己的概念重点。RPC 侧重于操作,SOA 侧重于消息,REST 侧重于资源。(参考)
所以对于 SOAP,编写了WSDL 文档标准。但是对于 REST 没有标准文档,但是有很多最佳实践,例如http://jsonapi.org
于 2017-03-12T20:26:49.173 回答