HTTP状态码

原创 2015年11月21日 16:06:03
状态码 类别 原因短语
1XX Informational(信息性状态码) 接收的请求正在处理
2XX Success(成功状态码) 请求正常处理完毕
3XX Redirection(重定向状态码) 需要进行附加操作以完成请求
4XX Client Error(客户端错误状态码) 服务器无法处理请求
5XX Server Error(服务端错误状态码) 服务器处理请求出错


       HTTP状态码用来表示客户端HTTP请求的返回结果、标记服务器的处理是否正常、通知出现的错误等工作。状态码格式如:200 OK,由3位数字和原因短语组成。其中,第一位数字表示响应类别,主要有五种响应类别(见上表)。 实践中,经常使用的HTTP状态码主要有以下14种:

1,200 OK

        该状态码表示请求在服务器端被正常处理了。

2,204 No Content

        该状态码表示服务器已成功处理请求,但返回的响应报文中不含实体的主体部分。

3,206 Partial Content

        该状态码表示客户端进行了范围请求,而服务器成功执行了这部分的GET请求。响应报文中包含由Content-Range指定范围的实体内容。

4,301 Moved Permanently
        该状态码表示永久重定向。请求的资源已经被分配了新的URI,以后要使用新的URI获取资源。新的URI会在首部字段Location中提供。

5,302 Found

        该状态码表示临时重定向。请求的资源已经被分配了新的URI,本次要使用新的URI访问。与301相似,但是302表示资源不是被永久移动,只是临时的。

6,303 See Other

        该状态码表示请求的资源存在另一个URI,应使用GET方法定向获取请求的资源。303状态码和302状态码有着相同的功能,但303明确表示应当使用GET方法获取资源,这点与302是不同的。

7,304 Not Modified

        该状态码表示客户端发送附带条件的请求(附带条件的请求是指使用GET方法的请求报文中包含If-Match,If-Modified-Since,If-Non-Match,If-Range,If-Unmodified-since中任一首部)时,服务器允许请求访问资源,但未满足附带条件。304状态码返回时,不包含任何响应的主体。304虽然被划分在3XX类别中,但是和重定向没有关系。

8,307 Temporary Redirect

        该状态码表示临时重定向,与302的含义是相同的。

9,400 Bad Request

        该状态码表示请求报文中存在语法错误,需修改请求的内容后重新发送请求。另外,浏览器会像200一样对待该状态码。

10,401 Unauthorized

        该状态码表示发送的请求需要有通过HTTP认证(BASIC认证、DIGEST认证)的认证信息。若之前已进行过一次请求,则表示用户认证失败。返回含有401的响应必须包含一个适用于被请求资源的WWW-Authenticate首部用以质询用户信息。当浏览器初次接收到401响应,会弹出认证的对话窗口。

11,403 Forbidden

        该状态码表示对请求资源的访问被服务器拒绝了。服务器没必要给出拒绝的详细理由,但如果想做说明的话,可以在实体的主体部分对原因进行描述。出现403的原因主要有未获得文件系统的访问授权,访问权限出现某些问题(从未授权的发送源IP地址试图访问)等情况。

12,404 Not Found

       该状态码表示服务器上无法找到请求的资源。也可能是服务器拒绝请求且不想说明理由。

13,500 Internal Server Error

       该状态码表示服务器在执行请求时发生了错误,也可能是Web应用存在的BUG或某些临时的故障。

14,503 Service Unavailable

       该状态码表示服务器暂时处于超负载或正在进行停机维护,现在无法处理请求。如果事先可以预估出解除上述状况需要的时间,写入Retry-After首部字段返回给客户端。


PS:HTTP状态码与实际状况不一致的情况是经常发生的,这既需要服务器开发同学遵循相应的规范加以改善,也提醒客户端开发同学要有适当的灵活性,出现不一致的情况时及时与服务端同学check相关逻辑,以保证最终交互的正确性和合理性。

版权声明:本文为博主原创文章,转载请注明出处。

web前端面试题3-------http状态码

状态码 含义 100 客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,...
  • u012763269
  • u012763269
  • 2015年06月28日 14:27
  • 1377

《图解HTTP》学习笔记(四)-返回结果的HTTP状态码

1、状态码告知从服务器端返回的请求结果HTTP 状态码负责表示客户端 HTTP 请求的返回结果、标记服务器端的处理是否正常、通知出现的错误等工作。借助状态码,用户可以知道服务器端是正常处理了请求,还是...
  • will130
  • will130
  • 2016年05月24日 20:51
  • 711

http协议的状态码——400,401,403,404,500,502,503,301,302等常见网页错误代码

http协议的状态码 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态码。 100(继续) 请求者应当继续提出请求。服务器返回此代码表示已...
  • piaoxuan1987
  • piaoxuan1987
  • 2016年06月07日 14:46
  • 5095

http状态码代表含义

一、200状态码:    成功2××: 成功处理了请求的状态码。    1、200 :服务器已成功处理了请求并提供了请求的网页。    2、204: 服务器成功处理了请求,但没有返回任何内容。 ...
  • waterDjj
  • waterDjj
  • 2016年09月09日 15:18
  • 3004

Http 状态码详解

1xx 消息相关的 代表请求已经收到,继续处理。 这个状态码的分类意味着一个临时的响应,仅有状态行和可选的头部信息组成,并且有一个空行结尾。因为HTTP/1.0并没有定义任何1xx相关的状态码,所...
  • sunnylinner
  • sunnylinner
  • 2016年12月26日 11:27
  • 801

http和缓存有关的状态码

200 OK (from cache)  是浏览器没有跟服务器确认,直接用了浏览器缓存; 而 304 Not Modified 是浏览器和服务器多确认了一次缓存有效性,再用的缓存。200(fro...
  • shuidinaozhongyan
  • shuidinaozhongyan
  • 2017年05月20日 16:34
  • 798

4 HTTP状态码

状态码告知从服务器端返回的请求结果 借助状态码,用户可以知道服务端是否正常处理了请求,还是出现了错误。 状态码类别 类别 原因短语 ...
  • hughtw
  • hughtw
  • 2015年03月19日 14:25
  • 571

网络请求服务器之HTTP状态码

HTTP状态码(HTTP Status Code) 一些常见的状态码为: 200 - 服务器成功返回网页  404 - 请求的网页不存在  503 - 服务不可用  一、1xx(临时响应) 表示临...
  • wuqingyidongren
  • wuqingyidongren
  • 2016年05月23日 12:30
  • 764

常见HTTP响应状态码

状态代码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值: 1xx:指示信息--表示请求已接收,继续处理 2xx:成功--表示请求已被成功接收、理解、接受 3xx:重定向--信息不完整需...
  • GarfieldEr007
  • GarfieldEr007
  • 2017年09月14日 19:04
  • 321

http协议详解及htt面试题目,常见的http状态码

HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串,各个字段的长度是不确定的。HTTP有两类报文:请求报文和响应报文。 HTTP请求报文 一个HTTP请求报文由请求行(re...
  • xiaoninvhuang
  • xiaoninvhuang
  • 2017年04月20日 12:54
  • 2080
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:HTTP状态码
举报原因:
原因补充:

(最多只允许输入30个字)