当相关资源处于阻塞状态时的REST API响应错误代码

时间:2018-11-26 22:10:20

标签: rest api

当具有POST目标资源许可权的用户但从属资源的状态之一导致目标资源无法创建时,哪个400级响应代码最合适。

示例:

Entity1
  id: 'A',
  status: 'BLOCKED'

Entity2:
  id: 'B'

LinkEntity:
   entity1Id: 'A'
   entity2Id: 'B'

Result when POSTing LinkedEntity: 'Error: Cannot link to Entity1 because it is BLOCKED'

在这种情况下,哪个响应代码最合适?

2 个答案:

答案 0 :(得分:2)

这听起来像是与权限相关的问题。对于这种情况,403 Forbidden可能是最好的。

答案 1 :(得分:2)

  

409 (Conflict)状态码表示由于与目标资源的当前状态冲突而无法完成请求。