我有一个在浏览器中工作并使用 REST API 后端的聊天应用程序。它具有以下业务逻辑规则:
userA
和 userB
已经开始聊天 session , session 是当前处于事件状态,则如果
userC
尝试开始聊天 session 要么
userA
或 userB
服务器应该阻止并返回一些对
userC
的一种错误我的问题是这个错误的合适的 HTTP 状态代码是
userC
应该收到?这不是客户端的错,因此 4xx 代码似乎不合适。
这不是服务器错误,因此 5xx 代码似乎也不合适。
我将发送带有附加 JSON 信息消息的响应正文,说明为什么请求失败,但是满足 RESTful 原则的适当 HTTP 状态代码是什么?
最佳答案
409
这里听起来最合适。 409
通常用于请求在其他方面有效但由于服务器/某些其他资源的当前状态而无法满足的情况。如果“其他状态”发生变化,则请求可能再次有效。
我写了更多关于 409 Conflict
这里:https://evertpot.com/http/409-confict
关于rest - 如果客户端请求由于某些业务逻辑而无法完成,服务器应该返回什么 HTTP 状态代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61484154/