HTTP状态码负责表示客户端HTTP请求的返回结果、标记服务器端的处理是否正常、通知出现的错误等工作。

状态码的类别:

记录在RFC2616上的HTTP状态码有40种,再加上WebDAV等的扩展,数量达到了60余种,但是实际上经常使用的只有14种,接下来介绍下具有代表性的这14个状态码。

1、200 OK

表示请求已正常处理。

2、204 No Content

表示请求处理成功,但没有资源可返回。

3、206 Partial Content

表示客户端进行了范围请求,服务器执行了这部分的GET请求。Content-Range指定响应的范围。

4、301 Moved Permanently

表示请求的资源已被分配了新的URI,以后应使用新的URI(永久性重定向)。

5、302 Found

表示请求的资源已被分配了新的URI,希望本次请求使用新的URI(临时性重定向)。

6、303 See Other

表示请求的资源已被分配了新的URI,希望本次请求使用新的URI,并且使用GET方法获取请求的资源。

注:当返回301、302、303响应状态码时,几乎所有的浏览器都会把POST改成GET,并删除请求报文内的主体,之后请求会自动再次发送。301、302标准是禁止将POST方法改变成GET方法的,但实际上大家都没按照这样来,所以直接使用303响应是最理想的。

7、304 Not Modified

表示客户端发送附带条件的请求时,服务器允许请求访问资源,但是未满足条件。不返回响应体,和重定向没有关系。

注:附带条件是指采用GET方法的请求报文中包含If-Match,If-Modified-Since,If-None-Match,If-Range,If-UnModified-Since中任一首部。

8、307 Temporary Redirect

表示临时重定向,和302相同。

9、400 Bad Request

表示请求报文中存在语法错误。

注:浏览器会像对待200 OK 一样对待该状态码。

10、401 Unauthorized

表示发送的请求需要通过HTTP认证,如果这是第二次返回401,则表示认证失败。

11、403 Forbidden

表示请求被服务器拒绝。

12、404 Not Found  

表示服务器上无法找到请求的资源。

13、500 Internal Server Error  

表示服务器端在执行请求时发生了错误。

14、503 Service Unavailable  

表示服务器忙,无法处理请求。可能是服务器暂时处于超负载或正在进行停机维护。

HTTP 协议常见的状态码的更多相关文章

  1. HTTP协议和几种常见的状态码

    前言:明知山有釜,偏向釜山行-----电影<釜山行> ------------------------------------------------------------------- ...

  2. http协议中常见的状态码以及请求方式,http协议的组成

    请求状态码: 2xxx:表示请求成功,例如200. 3xxx:表示请求被重定向,表示完成请求,需要进一步操作,例如 302. 4xxx:表示请求错误,例如:404,资源没有找到. 5xxx:表示服务器 ...

  3. 常见HTTP状态码

    常见HTTP状态码 200 OK 301 Moved Permanently 302 Found 304 Not Modified 307 Temporary Redirect 400 Bad Req ...

  4. 常见HTTP状态码大全

    我们经常会遇到404.500.302等提示,它们究竟是什么意思呢?除了这几个常见的状态码外,还有哪些我们没有遇到过的但有可能出现的状态码呢?网站的http状态对于网站维护人员来说是相当重要的,当网站出 ...

  5. HTTP协议6之状态码--转

    HTTP状态码,我都是现查现用. 我以前记得几个常用的状态码,比如200,302,304,404, 503. 一般来说我也只需要了解这些常用的状态码就可以了.  如果是做AJAX,REST,网络爬虫, ...

  6. HTTP常见的状态码——面试题常考

    一些常见的状态码为:  200 - 服务器成功返回网页 400(错误请求)服务器不理解请求的语法. 404 - 请求的网页不存在 500(服务器内部错误)服务器遇到错误,无法完成请求. 503 - 服 ...

  7. 常见HTTP状态码及URL编码表

    常见HTTP状态码 1xx: 信息          (用于表示临时响应并需要请求者执行操作才能继续的状态代码) 消息: 描述: 100 Continue 服务器仅接收到部分请求,但是一旦服务器并没有 ...

  8. HTTP协议之http状态码详解

    什么是HTTP状态码 HTTP状态码的作用是:Web服务器用来告诉客户端,发生了什么事. 状态码位于HTTP Response 的第一行中,会返回一个”三位数字的状态码“和一个“状态消息”. ”三位数 ...

  9. HTTP常见响应状态码及解释、常用请求头及解释

    1.HTTP常见响应状态码及解释2XX Success(成功状态码) 200 表示从客户端发来的请求在服务器端被正常处理204 该状态码表示服务器接收的请求已成功处理,但在返回的响应报文中不含实体的主 ...

随机推荐

  1. 移值UCOS2到M4核与M3核的区别

    之前移值过ucos2到stm32f2系列的单片机,这个单片机是属于arm的m3内核的.最近在学习永磁同步电机的控制,对于这个电机的控制,有比较多的数学计算,甚至于还有浮点的运算.所以用到了stm32f ...

  2. Sliverlight调用WebService跨域问题解决

    在SilverlightApplication正常添加webservice(承载网站中建webservice,这样就不存在跨域问题了,即域名一样如:localhost:4676) http://loc ...

  3. Mybaits API docs

    http://www.mybatis.org/mybatis-3/apidocs/index.html

  4. 20165213 Exp5 MSF基础应用

    Exp5 MSF基础应用 实践内容 本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要完成: 1.1一个主动攻击实践,如ms08_067; (1分) 1.2 一 ...

  5. 博客1--tensorflow的图像基本处理操作

    话不多,具体内容在开源中国里我的博客:https://my.oschina.net/u/3770644 代码: #!/usr/bin/env python# -*- coding:utf-8 -*-# ...

  6. 创建JavaScript函数的几种方式

    window.onload = function() { // console.log('ok'); //正规的创建函数 function test(abc, d) { return abc(d); ...

  7. java的线程中断

    在java中中断线程可以使用interrupt()函数.此函数虽然不能终止线程的运行,但是可以改变线程的状态为true 即:isInterrupted()的值返回为true 注意:当函数调用了已经被阻 ...

  8. java之路 定义个一初始值 取它 个位 十位 百位 千位。。的数值。

    class Demo{ public static void main(String[] args){ int i =2584; //do{ int g = i%10; int s = (i%100) ...

  9. 【Selenium】【BugList11】启动selenium server报错:Unsupported major.minor version 52.0

    [环境信息] python:3.6.5 平台:win7 selenium:3.11.0 selenium server:selenium-server-standalone-3.11.0.jar jd ...

  10. Stanford CS20学习笔记

    Lecture Note 2 Tensorboard P3 Data Structures P4 Math Operations P6 Data Types P7 tf native &&am ...