我想知道在 REST 中使用单数名称何时被认为是正确的(我的意思是,使用最佳实践),但更特别是当两个实体之间存在一对一映射时。
第一个例子,我们必须为客户管理忠诚度。客户可以使用 访问他的个人资料/me
。此外,他有一个忠诚度帐户,其中显示有关忠诚度积分、折扣、解锁特定状态的下一个阈值的若干信息。你会设计这样的路径:
/me/fidelity_account
,/me/fidelity_accounts/mine
- 我的最爱,/me/my_fidelity_account
,/me/my_fidelity_accounts/mine
,/me/fidelity_accounts/{id}
,假设给出错误的 id 给出 403,- 或任何其他方式来设计?
第二个例子,我们必须为客户管理购物清单。一个客户可能有多个列表,但必须至少始终有一个称为“Internet Shopping List”的列表。此列表是唯一的,在其他列表中具有自己的 ID。网上购物清单有一个完全不同的模式。
我们对这个用例有几个想法:
- 为特定列表创建完全不同的路径,例如
/me/shopping_lists/{id}
,但(单数)。/me/internet_shopping_list
这是我最好的选择。 - 创建相同的路径,例如
/me/shopping_lists/{id}
,但/me/shopping_lists/internet_shopping_list
针对特定列表。 - 或者也许是另一种方式?