我正在尝试找出使用 REST 约定进行更新的正确方法。到目前为止,我们有:
单个项目的更新:
PUT
https://mydomain.com/dogs/{id} accept: application/json, {dog}
多个项目的更新:
PUT
https://mydomain.com/dogs accept: application/json, [{dog1}, {dog2}, ...]
我试图弄清楚约定是否也规定(除了我们上面的内容之外,或者代替我们上面的内容)这个单个项目:
PUT
https://mydomain.com/dogs accept: application/json, {dog}
然后,后续问题:假设我们更新集合时某个元素出现验证错误。惯例是否规定我们返回 422 并拒绝整个请求?还是我们更新有效的并返回 4xx 状态码?