REST API的根页面有哪些最佳实践?

25
我想知道关于REST Web服务的根端点是否有一些最佳实践?我的意思是,它应该是关于API使用的简短文档吗?它应该是一个描述所有可用方法的XML文档吗?还是只返回"未知方法"?

5
这是一个定义不清的问题!请提供更多细节。 - Keith Nicholas
6个回答

15

对我来说,问题非常清晰明了。

我认为应该响应404。如果根路径没有与之相关联的资源,那么就没有什么可以返回的。

如果您觉得404不够有用,那么返回文档URL也是可以的。


这一直是我的思考过程,但有很多基础设施项目会尝试作为保持活动或健康检查而ping root。令人恼火的是,许多这些解决方案没有可配置性,除非进行一些hackery(例如Azure容器应用服务)。 - Sinaesthetic

10

在我看来,REST应该是自描述的,因此让根显示错误是设计不良。 我希望根包含信息,使您可以导航到API的其余部分。 例如,根可能包含指向产品类别列表的链接,从中API用户可以选择一个类别,然后列出产品等。 自描述的API意味着需要编写和更新的文档更少!!


1
我同意。根路径应该有HATEOAS链接,使客户端能够浏览嵌套资源。 - Saurabh Misra

2


1. NerdDinner使用WCF Data Services,这是正确实现RESTful服务的好方法。我之所以指向它而不是直接指向WCF数据服务,是因为它是一个公共网站,您可以使用它。 2. MediaWiki不是一个很好的例子,因为它在URI中传递操作,但它在技术上是一个RESTful服务,并展示了许多有趣的想法。


1

我是指在另一方面...从Web应用程序调用Flickr API时文件的外观... - adam

1
REST API的根终点是指在dispatcher-servlet后第一个斜杠“/”定义的API。它包含所有资源列表的GET(通常是所有数据库表的GET),该列表进一步包含所有项目,而在单个项目中将包含DELETE、PUT/PATCH和SELF GET URL。因此实现了HATEOS。

-2

对我来说,我只是重定向到我的前端。

在Node JS中,使用res.redirect("https://<<你的前端>>");


哇,这可真是相当不寻常的行为,我得说 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接