常用HTTP状态码

状态码 释义 使用
100 Continue 表示目前为止一切正常, 客户端应该继续请求, 如果已完成请求则忽略。一般用在这种情况:客户端在发送一个大数据请求前,希望知道服务器是否会对这个数据进行处理。 客户端必须在发送请求实体前, 在初始化请求中发送 Expect: 100-continue 首部并接收 100 Continue 响应状态码.
101 Switching Protocol 协议切换,状态码表示服务器应客户端升级协议的请求正在切换协议。服务器会发送一个Upgrade响应头来表明其正在切换过去的协议
200 OK 成功

默认情况下状态码为200的响应可以被缓存
GET: 已经取得资源,并将资源添加到响应的消息体中。

HEAD: 响应的消息体为头部信息。

POST: 响应的消息体中包含此次请求的结果。

TRACE: 响应的消息体中包含服务器接收到的请求信息。

PUTDELETE 的请求成功通常并不是响应200 OK的状态码而是 204 No Content 表示无内容(或者 201 Created表示一个资源首次被创建成功)。
201 Created 成功并创建了新的资源。

同时新增的资源会在应答消息体中返回,其地址或者是原始请求的路径,或者是 Location 首部的值。
设计 REST API,或者一个 CRUD API,使用 POST(或者 PUT)成功创建一个新的资源后,服务器应该返回 201 Created 同时在 header 的 Location 字段给出刚刚创建好的这个资源的 URI。
202 Accepted 成功,但是服务器仍在进行处理。

表示服务器端已经收到请求消息,但是尚未进行处理。
服务器在接受请求后,可以先返回202告诉客户端已经收到消息,但是有一个异步处理还在继续处理
203 Non-Authoritative Information 成功,非权威信息。

状态码表明请求是成功的,但是通过转换代理(RFC7230的5.7.2节)已经从源服务器的200 (OK)响应中修改了所包含的有效负载。
204 No Content 成功,没有内容返回。

但是客户端客户不需要离开当前页面。默认情况下 204 响应是可缓存的。一个 ETag 标头包含在此类响应中。
205 Reset Content 成功,客户端进行重置操作。

用来通知客户端重置文档视图,比如清空表单内容、重置 canvas 状态或者刷新用户界面。
常用204代替
206 Partial Content 部分成功。

header必须包含 Range 首部,表明自己请求第几个字节到第几个字节的内容,如果服务器支持,响应主体包含range首部请求的数据。

如果只包含一个数据区间,那么整个响应的 Content-Type 首部的值为所请求的文件的类型,同时包含 Content-Range 首部。

如果包含多个数据区间,那么整个响应的 Content-Type 首部的值为 multipart/byteranges ,其中一个片段对应一个数据区间,并提供 Content-RangeContent-Type 描述信息。
只包含一个数据区间的响应
包含多个数据区间的响应
常用于断点续传和多线程下载
301 Moved Permanently 永久重定向。

说明请求的资源已经被移动到了由 Location 头部指定的url上,是固定的不会再改变。搜索引擎会根据该响应修正。

尽管标准要求浏览器在收到该响应并进行重定向时不应该修改http method和body,但是有一些浏览器可能会有问题。所以最好是在应对GETHEAD 方法时使用301,其他情况使用308 来替代301
----
302 Found 临时重定向

请求的资源被暂时的移动到了由Location 头部指定的 URL 上。浏览器会重定向到这个URL, 但是搜索引擎不会对该资源的链接进行更新
----
303 See Other GET重定向到相关页面

它表示重定向链接指向的不是新上传的资源,而是另外一个页面,比如消息确认页面或上传进度页面。而请求重定向页面的方法要总是使用 GET
304 Not Modified 未改变

无需再次传输请求的内容,也就是说可以使用缓存的内容。

通常是在此请求下会返回304:使用 GETHEAD等安全方法(safe),或是在请求中附带了头部信息: If-None-MatchIf-Modified-Since

如果资源没被修改过,服务器端就应该返回 304 Not Modified,同时 body 不包含任何内容

如果修改过,则返回 200 OK ,响应会带有头部 Cache-Control, Content-Location, Date, ETag, Expires,和 Vary.
很多浏览器的 开发者工具 会发出额外的请求,以达到 304 的目的,这样可以把资源以本地缓存的形式展现给开发者。
307 Temporary Redirect 临时重定向

请求的资源暂时地被移动到了响应的 Location 首部所指向的 URL 上。

状态码 307302之间的唯一区别在于,当发送重定向请求的时候,307 状态码可以确保请求方法和消息主体不会发生变化。如果使用 302 响应状态码,一些旧客户端会错误地将请求方法转换为 GET
308 Permanent Redirect 永久重定向

请求的资源已经被永久的移动到了由 Location 首部指定的 URL 上。浏览器会进行重定向,同时搜索引擎也会更新其链接
在重定向过程中,请求方法和消息主体不会发生改变,然而在返回 301状态码的情况下,请求方法有时候会被客户端错误地修改为GET方法。
400 Bad Request 错误的请求

由于请求语法无效(例如,格式错误的请求语法,太大的大小,无效的请求消息或欺骗性路由请求),服务器不能或不会处理该请求。
401 Unauthorized 未授权

客户端错误,指的是由于缺乏目标资源要求的身份验证凭证,发送的请求未得到满足。

这个状态码会与 WWW-Authenticate 首部一起发送,其中包含有如何进行验证的信息。
响应示例
这个状态类似于 403, 但是在该情况下,依然可以进行身份验证。
403 Forbidden 拒绝访问

客户端错误,指的是服务器端有能力处理该请求,但是拒绝授权访问。
这个状态类似于 401,但进入该状态后不能再继续进行验证。该访问是长期禁止的,并且与应用逻辑密切相关(例如不正确的密码)

总的说401相应应该用来表示缺失或错误的认证,403表示用户认证后,但权限不足,无法对该资源进行操作
404 Not Found 资源不存在

客户端错误,指的是服务器端无法找到所请求的资源。返回该响应的链接通常称为坏链(broken link)或死链(dead link),它们会导向链接出错处理页面。
404 状态码并不能说明请求的资源是临时还是永久丢失。如果服务器知道该资源是永久丢失,那么应该返回 410 (Gone) 而不是 404 。
405 Method Not Allowed HTTP请求方法禁用
407 Proxy Authentication Required 缺少代理认证 这个状态码会与 Proxy-Authenticate首部一起发送,其中包含有如何进行验证的信息。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,457评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,837评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,696评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,183评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,057评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,105评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,520评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,211评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,482评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,574评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,353评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,897评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,489评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,683评论 2 335

推荐阅读更多精彩内容

  • 理解 HTTP 协议对构建网络应用是一个非常基础的要求,比如爬虫类程序,必须深入理解 Request 和 Reso...
    马六甲的笔记阅读 447评论 0 0
  • 作为一个前端,了解下 HTTP 协议是很有必要的。 先说个题外话,从《跃迁》一书中提到,高手获取信息的方式 —— ...
    VioletJack阅读 813评论 1 20
  • 参考 http://www.ruanyifeng.com/blog/2016/08/http.html[http:...
    小飞船1号阅读 234评论 0 0
  • 前言 通过复用以前获取的资源,可以显著提高网站和应用程序的性能。Web 缓存减少了等待时间和网络流量,因此减少了显...
    small_zeo阅读 650评论 0 0
  • 推荐指数: 6.0 书籍主旨关键词:特权、焦点、注意力、语言联想、情景联想 观点: 1.统计学现在叫数据分析,社会...
    Jenaral阅读 5,685评论 0 5