HTTP 状态吗 400 VS 422

栏目: 后端 · 前端 · 发布时间: 7年前

内容简介:这里记录下 HTTP 状态码 400 与 422 区别。400 写入了 HTTP/1.1 规范(RFC 2616),422 是在 WebDAV(基于Web的分布式编写和版本控制) 引入的扩展,只有当服务端支持 WebDAV 扩展时,才能选择向客户端返回 422。而一旦支持 422 意味着也应该支持该扩展定义的其他状态码。HTTP/1.1 规范能够描述足够多的情况,但仍然不够完备。

这里记录下 HTTP 状态码 400 与 422 区别。

规范

400 写入了 HTTP/1.1 规范(RFC 2616),422 是在 WebDAV(基于Web的分布式编写和版本控制) 引入的扩展,只有当服务端支持 WebDAV 扩展时,才能选择向客户端返回 422。而一旦支持 422 意味着也应该支持该扩展定义的其他状态码。

区别

HTTP/1.1 规范能够描述足够多的情况,但仍然不够完备。

400 主要是明显的客户端错误以至于服务端不能理解请求从而导致无法处理,包括请求语法格式错误,请求实体过大、欺骗性路由等。

422 则表现为请求格式错误,但出现了 语义 错误,以至于服务端无法响应。可以理解为服务端能理解请求资源类型 content-type,否则应该返回 415(Unsupported Media Type),也能理解请求实体内容,否则应该返回 400(Bad Request)。

Case

通过访问 https://source.unsplash.com/random/640x320 我们能获取指定尺寸的随机图片,当指定宽度或高度为 0 时,服务端返回了 422,可以理解为高度或宽度为0的图片在“语义”上不构成一个平面图形。

结论

如果服务端支持 WebDAV 扩展,可以在某些场合使用 422 代替 400,否则使用 400 也是没问题的。

参考


以上所述就是小编给大家介绍的《HTTP 状态吗 400 VS 422》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

HTTP/2基础教程

HTTP/2基础教程

Stephen Ludin、Javier Garza / 罗正龙、郑维智 / 人民邮电出版社 / 2018-1 / 49.00元

让网站和应用更快速、更简洁、更稳健,从而有效提升用户体验,这无疑是众多开发者梦寐以求的。然而互联网发展日新月异,HTTP/1.1协议已经难以满足现今的需求。在众多Web性能提升方案中,HTTP/2值得尝试。 本书是HTTP/2实用指南,介绍了HTTP/2的设计初衷和新特性,以及如何才能充分利用这些特性来打造高性能网站及应用。作者用定量分析方法,对比了不同网络环境下及不同浏览器上HTTP/1.......一起来看看 《HTTP/2基础教程》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器