繁体   English   中英

REST Web服务的'WSDL'首选方法是什么?

[英]What is the prefered method for a 'WSDL' for REST webservice?

我已经构建了大量的SOAP Web服务,但我正在为特定的项目构建一个REST Web服务,我想知道人们用于REST服务的'WSDL'是什么,或者甚至是否需要它。

REST实际上只在资源上使用HTTP谓词(GET,PUT,POST,DELETE)。 资源上的所有操作都应该以这种方式表示。 当您无法以适合其他三种方式表达业务逻辑时,POST将用作捕获所有内容。 这就是为什么REST服务实际上没有WSDL的原因,因为您在资源上只有4个方法。 请注意,Zend Framework REST库实际上并不是RESTful,而是更简单的旧XML(POX)服务。

虽然Sam认为RESTful Web应用程序不需要直接模拟WSDL,但是有一个XML词汇表可用于描述RESTful Web应用程序:WADL或Web应用程序描述语言 在我的公司,我们主要使用WADL为我们想要构建的给定服务定义规范 - 我们通常不以编程方式使用它。 也就是说, WADL主页包含一些用于代码生成的Java工具, Restlet ,Java REST框架,包括WADL扩展,用于基于WADL动态连接应用程序,并基于有线应用程序动态生成WADL。 我是WADL的粉丝,建议您查看一下。

您可以尝试使用Swagger (现在的OpenAPI),它允许使用JSON开放标准来描述REST服务。

实际上可以使用WSDL,但它应该是v 2.0 - 请参阅“ 使用WSDL 2.0描述REST Web服务 ”一文。

如果在REST服务中使用XML,则可以提供XSD。

或者只是XML的例子,应该足以解决简单的数据结构问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM