在工作中,每次处理创建 CRUD api 时,我总是返回完整的对象以进行创建和更新。
现在我正在开发一个个人项目,我想知道只返回 id 是否是一个好主意。
这意味着如果前端需要完整数据,将调用公开的 API findById。
不返回这些数据是完全可以的。您至少应该返回一个
Location
标头,指向新创建的资源,并具有 201 Created
状态
返回完整的对象可以消除一次往返。在这些情况下,您应该返回
Content-Location
标头。您还可以让客户决定是否需要使用 Prefer: return=representation
标头。
一般的设计建议是停止考虑路由中的 id。整个URL已经是唯一的id了。