在REST API中处理创建和更新请求的首选方法是什么?
在我的前端,我使用相同的表单进行创建和更新,唯一的区别是在更新的情况下,填充了带有id的隐藏表单字段。
是否可以使用POST方法将这两个请求发送到/ api / post并根据id决定是发布还是更新?或者应该以其他方式处理?
答案 0 :(得分:1)
如果你想遵循 REST 原则,最好像下面这样分离端点。
POST api/collections (e.g. api/users)
PUT api/collections/:id (e.g. api/users/23)
分离端点有两个原因。
PUT 必须是幂等的,而 POST 则不是。
如果资源的 URL(如 api/users/23)已经存在, 使用PUT。如果没有,发送POST并让服务器生成 网址。 (很多情况下使用DB的自增键)
当然,是否遵循 REST 原则由您决定。