26、API资源关联与多对多关系处理

API资源关联与多对多关系处理

1. 资源交叉引用与最终API定义

在API设计中,资源之间的交叉引用是常见的需求。以下是最终的API接口定义,展示了如何从一个资源正确引用另一个资源:

interface Book {
  id: string;
  authorId: string;
  title: string;
}
interface Author {
  id: string;
  name: string;
}
interface ChangeLogEntry {
  id: string;
  targetId: string;
  targetType: string;
  description: string;
}

这些接口定义了资源之间的引用关系,例如 Book 资源通过 authorId 引用 Author 资源。

1.1 引用的权衡

依赖引用的主要权衡在于,我们要么进行多次API调用以获取相关信息,要么使用像GraphQL这样的工具来检索我们感兴趣的所有信息。

1.2 总结

  • 存储引用的字段通常应为字符串字段,并且应以“ID”后缀结尾(例如 authorId )。而保存外部资源数据副本的字段显然应省略此后缀。
  • 引用通常不应期望在资源的整个生命周期内得到维护。如果其他资源被删除,引用可能会变得无效。
  • 资源数
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值