如何发现RESTful Web服务?

时间:2009-11-24 12:44:36

标签: web-services rest service discovery

当我想找到所需功能的“大”Web服务(基于WS - * / WSDL)时,我可以简单地谷歌搜索“.... filetype:wsdl”,因为Google也会索引WSDL定义。或者我可以简单地使用一些已经抓取Web的注册表来为我提供WSDL定义,例如SeekDa.com或ServiceFinder。

当我想找到RESTful Web服务(RESTful Web API)时,我可能只关注社区,因为无法区分RESTful Web服务的URI和其他Web资源(例如Web站点URL),因此聚焦爬虫不能说100%确定:这是RESTful Web服务的URI。所以,我来了,例如到ProgrammableWeb.com,我希望有人已经使用/找到我正在寻找的服务并在那里注册。

最近,我一直在寻找缩写扩展的Web服务。我无法在ProgrammableWeb这样的门户网站中找到它,因为没有人把它放在那里。最后,我被迫浏览了几个缩写词典网站,在那里挖掘和钻取,最后我找到了RESTful形式的Abbreviations.com Web服务API。这花了我很多时间!

还有其他方法可以在网上发现RESTful Web服务吗?

4 个答案:

答案 0 :(得分:11)

您可以在服务的根目录中公开/ api端点(例如,在REST API Design Handbook中推荐)。这将返回包含您的服务支持的“子”资源的XML或JSON响应,例如/ API /产品

答案 1 :(得分:10)

REST的理想是服务与Web页面一样可用,它们不需要注册表。 [必须承认我没有完全“了解”这个RESTful世界的含义,没有WSDL,没有注册表感觉就像没有稳定器的骑自行车。]

在旧版网络中,谷歌之前,我们是如何找到网页的?有效的口碑和一些关键的起点。据我所知,REST服务几乎处于谷歌之前的阶段。

我不同意“不可能区分RESTful Web服务的URI和其他Web资源” - 如果我们按照链接我们得到某些类型的内容application / xml和application / json会非常强大指标不是吗?

答案 2 :(得分:9)

REST Web服务有一个类似WSDL的文件:它叫做WADL。

答案 3 :(得分:2)

SoapUI 现在可以发现REST服务。它作为代理,写下所有通过的请求/响应。有请求和响应SoapUI重新创建服务的描述/定义。 现在,定义可以存储在 WADL WSDL 格式中(作为XML世界中的WSDL和XML-Schema)。它也可以以 Swagger 格式存储。我更喜欢Swagger。 Swagger可以直接从SoapUI存储在 SwaggerHub 中,这与源代码的GitHub类似。 SwaggerHub是众多API管理系统之一。