我们有 2 名开发人员在设计 RESTful API 端点的方式上存在冲突。基本上,假设我们手头有 Facebook 产品,一张用于发布帖子的表格。
第一个开发者给出的意见是
- 我们应该按产品而不是技术存储来区分端点。为此,我们将为用户 facebook 帖子和其他 facebook 帖子设置端点。
/v1/wall/mypost
/v1/wall/other
- 为此,我们可以配置每个可能返回不同结果的产品
第二个开发商不同意,给出意见
- 如果是这样,它将成为无限的端点。它会有
/wall/someone
,/wall/sometwo
. 我们应该有一个端点,让它成为查询的一部分。前任。
/wall?user=someone
,/wall?user=sometwo
端点应该看起来像技术模式,它返回相同的结果,为什么它必须分开以使其在维护代码方面有更多的工作。
设计端点的最佳实践是什么?它应该是产品的端点吗?还是应该按模式?