dev.to | 📄 原文链接 | 2026-11-10 收录

点赞超时重发变成取消赞:用幂等设计容错 API

来源:dev.to — 2026-11-09

📋 概述

POST /posts/42/toggle-like 这种「切换」语义在重试下必然出错:第一次写库成功但响应丢了,浏览器重试就把赞取消,两次事务都提交成功、数据完整性完美、用户意图正好相反。事务和行锁都救不了,因为它们只管一次操作内部的原子性。解法是改语义:请求改成「确保我的赞存在」,第一次创建,重试发现已存在就保持不动,响应可以不同但意图效果一致。

🔑 核心要点

💡 金句

“Instead of asking the API to toggle, ask it to make sure my like exists.”
译:不要请求 API 去「切换」,而是请求它「确保我的赞存在」。
← 返回 dev.to 首页