带有基于rest的服务的WSDL有什么意义?

如果基于REST的Web服务就像GETing和POST到url一样简单并解析响应,那么我们需要一个wsdl吗? 重点是什么。 我理解当使用基于SOAP的服务时,它用于构造SOAP请求和响应,但是当我创建基于REST的服务时,不明白为什么visual studio为我提供了wsdl …

WSDL中使用WCF创建的REST服务没有任何意义,因为WCF仅支持无法描述REST服务的WSDL 1.1(或1.0)。 如果您尝试使用为WCF REST服务生成的WSDL来创建客户端代理,则无论如何都无法调用该服务。 用于REST的Visual Studio模板不会公开元数据,因此只有在自己添加serviceMetada行为(可能还有mex端点)时才会获得无用的WSDL。

WSDL 2.0和WADL支持REST服务的描述,其重点与SOAP服务类似 – 描述您可以使用服务但以REST方式执行的操作。

WSDL旨在允许客户端主要在设计时发现服务function。 REST具有超媒体约束,要求所有服务function都应该在运行时通过它们返回的链接表示forms被发现。

适当的REST服务自然是可发现的,因此不需要另外的WSDL规范。

毫无意义。 WSDL只是服务公开内容以及如何调用的标准化描述。 您不需要 WSDL,但是您需要一些方法来记录您的服务可以做什么,以便客户知道如何调用它。