|
|
1
255
如果“验证失败”意味着请求中存在一些客户端错误,则使用HTTP 400(错误请求)。例如,如果URI应该有一个ISO-8601日期,并且您发现它的格式错误或引用了2月31日,那么您将返回一个HTTP 400。如果您期望实体体中有格式良好的XML,但它无法解析,则同上。 (1/2016):过去五年 WebDAV 更具体的HTTP422(不可处理的实体)已经成为HTTP400的一个非常合理的替代方案。例如,请参见 JSON API . 但请注意,HTTP 422 不 把它变成了HTTP 1.1, RFC-7231 . 理查森和鲁比 RESTful Web Services 包含一个非常有用的附录,说明何时使用各种HTTP响应代码。他们说:
还有:
|
|
|
2
79
来自RFC 4918(也记录在 http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml )以下内容:
|
|
|
3
21
数据库中的副本应为
我建议使用
我在这里对4xx代码作了更详细的解释: http://parker0phil.com/2014/10/16/REST_http_4xx_status_codes_syntax_and_sematics/ |
|
|
4
13
这里是: RFC2616第10.4.1节-400错误请求
RFC7231第6.5.1-6.5.1节。400不良请求
指畸形(不正常)病例! RFC4918-11.2。422个不可加工实体
结论 经验法则:[]00涵盖了最一般的情况和指定代码未涵盖的情况。
422个
符合最佳对象验证错误(确切地说,我的建议是:)
400不正确地用于对象验证 |
|
|
5
7
我会说,从技术上讲,这可能不是HTTP故障,因为资源(大概)被有效地指定了,用户已经过身份验证,并且没有操作故障(然而,即使规范也包括一些保留的代码,如402所需的付款,这些代码在严格意义上也与HTTP无关,尽管建议不要在协议级别上,使任何设备都能识别这种情况)。 如果实际是这样,我会在响应中添加一个状态字段,其中包含应用程序错误,比如 <状态><代码>4</code><消息>日期范围无效</message></status> |
|
|
7
0
“验证失败”究竟是什么意思?你在验证什么?您所指的是语法错误(例如,XML格式错误)之类的内容吗? 如果是这样的话,我会说400个错误的请求可能是正确的,但是如果不知道它是什么,你就无法“验证”它。 |
|
|
FilRose · 在Django中包含身份是否重要? 4 年前 |
|
|
Qwerty · 如何获取CORS http失败飞行前请求的状态代码 8 年前 |
|
|
mko · 失败的POST请求使用什么HTTP响应代码? 8 年前 |
|
Max Peng · 返回1xx状态代码时,弹簧引导请求挂起 8 年前 |
|
|
userMod2 · 为什么发送API状态代码? 10 年前 |
|
|
Ben Crowhurst · 错误标识符的最合适HTTP状态代码 12 年前 |