我有包作为资源。一个包可以有父包等等。在层次结构之上是根包。现在的用例是:
给定任何包(不一定是根包)的 packageId,我想检索存在于其顶部层次结构中的根包的详细信息。
我对 2 个网址感到困惑:(或任何其他更好的网址)
/rest/v1/packageDetails/rootPackage/{packageId}
或者
/rest/v1/packageDetails/{packageId}/rootPackage
最合适的rest end point url应该是什么?
选项 2。为了证明推理,我将使用一个不同的例子。
假设您有一个 rest API 端点:
/rest/v1/users/{userId}
如果您想创建一个额外的端点来检索数据的子集,例如 attributes
,您可以像这样构造它:
/rest/v1/users/{userId}/attributes
为用户检索特定属性的另一个用例可能如下所示:
/rest/v1/users/{userId}/attributes/{attributeId}
需要注意的重要一点是,属性属于用户。属性是特定用户拥有的一位或多位数据。
在您的例子中,一个包有一个 rootPackage,因此您可以将 rootPackage 建模为属于特定的包。