一对一资源的REST端点应该是什么?

时间:2018-09-22 03:36:12

标签: rest

我的系统具有三个资源:UserCartAddress。关系如下:

User 1对* Adress

User一对一Cart

现在,端点对于一对多或多对多映射非常简单。例如,要检索Address

获取 /api/users/{userId}/addresses/{addressId}-单个地址

获取 /api/users/{userId}/addresses/-所有地址

映射一对一资源:

Cart怎么样。看起来应该是:

获取/api/users/{userId}/carts/{cartId}-为用户检索一个

有两个问题:

  1. 我知道购物车是一对一的。但是,我必须查询/carts
  2. 要为用户获取购物车,我需要知道其cartId。不好。

如果我知道购物车是一对一的,是否还需要查询集合端点/api/users/{userId}/carts?在这种情况下,我得到一个JSON列表/数组,然后选择第一项。 但这并不自然

是否有任何REST约定为一对一映射的资源定义了直观的端点?

我可以做类似的事情:/api/users/{userId}/cart。请注意,/cart中没有复数形式。

0 个答案:

没有答案
相关问题