软删除与请求去重:API 开发的关键技术解析
软删除相关技术
引用完整性
在处理软删除时,引用完整性是一个值得关注的问题。简单来说,我们需要决定软删除的资源是否仍可被其他资源引用。不同的 API 在引用完整性方面有不同的模式:
- 限制引用破坏 :某些 API 可能会限制破坏引用的能力。
- 级联更改 :当相关资源被删除时,可能会级联删除其他涉及的资源。
- 保留引用 :将引用保留,像定时炸弹一样,未来尝试使用该引用时可能会出问题。
在软删除的情况下,规则应保持不变。即如果正常标准删除方法为维护引用完整性而阻止删除,那么软删除也应具有相同的限制,尽管从技术上讲引用并未被破坏。
对其他方法的影响
对于批量删除方法,存在一些疑问。它应该继续像以前一样永久批量删除资源,还是默认修改为软删除?如果修改,是否还应提供批量清除方法?答案是应该修改,如果需要这种行为,还应提供批量清除方法。
以下是批量删除方法的示例实现:
abstract class ChatRoomApi {
@post("/chatRooms:batchDelete")
BatchDeleteMessages(req: BatchDeleteMessagesRequest): void {
for (let id of req.ids) {
ChatRoomApi.DeleteMessage({ i
超级会员免费看
订阅专栏 解锁全文
1057

被折叠的 条评论
为什么被折叠?



