我正在开发一个与其他网络服务集成的 RESTful 应用程序。
我的问题是,如果我的客户端发布的数据对其中一个网络服务无效,我应该返回哪个 HTTP 状态?例如,如果它发布的名称对于我的应用程序使用的 Web 服务无效,考虑到这是用户输入错误,我应该返回 4** 状态代码中的哪一个?
我的一些考虑,以及为什么我不习惯使用它们:
- 400:数据无效,但不是请求格式本身
- 403:服务器没有拒绝响应,尽管数据无效
- 406:错误在提供的参数中,而不是在“接受” header 中
- 412:错误与“If-Match” header 无关
那么,在这种情况下您会使用什么?
最佳答案
坚持使用 400,或查看 422(可能接近您的需要)。
关于web-services - 在域数据错误时返回哪个 HTTP 状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8966929/