我的问题是一个相当普通的 HTTP状态码,当一个 删除是不可能的资源(但不涉及用户的权利)。
我们在一种资源类型上有一个 RESTful API。
删除方法在资源上被授权,但是在某些条件下不能删除资源(如果有数据绑定到此资源)。
在这种情况下返还给客户的正确 HTTP状态码是什么?
下面是我收集到的一些可能性,以及为什么在我的情况下它似乎不合适:
更新: 不能通过 REST API 更改阻止删除资源的数据绑定。然而,资源可以通过其他方式“释放”,因为数据来源的数据库也可以被其他可能改变资源状态的应用程序访问(数据库中的 SQL DELETE 总是可以做到这一点)。