我有一个基于REST的API,其中gadget
与widget
有关联。
gadget
:/api/gadget/123
widget
s:/api/gadget/123/widgets
。 问题是如果特定widget
目前没有gadget
,会发生什么?一种解释是返回状态代码404
,另一种解释是返回带有空列表的200
。
有更好的方法吗?或者是否存在我们所遗漏的问题的细节问题,这有助于影响其中一个?
答案 0 :(得分:1)
这对我来说似乎有些解释。我会根据这个决定 - 你是否希望gadget
总是有一个widget
的集合(即使是空的)?如果是这样,我会使用200
响应和空列表,否则404
需要某种PUT
或POST
来初始化集合。
换句话说,如果您的资源要包含指向其他资源的链接,那么您的gadget
资源是否始终包含指向相关widget
的链接,如果可能为空?