所以我有这种情况,可以说我正在制作两个 API;汽车 API 和 AutoService API。Car API 管理与汽车实体相关的资源。AutoService API 管理与为汽车提供维修服务的汽车服务零售实体相关的资源。
假设一个应用程序同时使用这两种 API。它为特定汽车实体创建汽车服务实体。因此,它使用 Car API 创建/编辑汽车资源,然后将其传递给 AutoService API 以为该特定汽车实体创建服务日志。这意味着 AutoService API 中的服务日志实体正在引用作为 API 外部资源的实体。
问题变成了,处理这种依赖关系的最佳实践是什么?我最初的想法是在服务实体中创建两个属性;外部所有者和外部所有者主机。externalOwner 实体将映射到汽车实体的 id。externalOwnerHost 将描述外部所有者的来源,比如说/auto/car
。有了这个关联,为应用程序客户端创建一个约定,以自行确定如何访问给定 externalOwnerHost 的外部所有者实体。所以对于这个例子,应用程序应该足够聪明,知道使用GET /auto/car?fields=
它,因为它知道资源的主机。这是最佳实践吗?你们有更好的想法吗?