在我们向服务器发送一个HTTP请求时,会经历tcp连接(三次握手),发送HTTP请求,服务器返回HTTP响应,浏览器对响应中的状态码进行分析判断,来确定请求是否成功,是否成功得到我们需要的信息。

那么,对于服务器返回的常见状态码,浏览器会怎样应对呢?

1xx:是预留给协议的

2xx:是表示请求成功的

3xx:是表示重定向的

4xx:是客户端错误的

5xx:是服务器端错误的

常见状态码:

2xx

200:Success。请求成功。

3xx

301:永久重定向。当返回的状态码是301时,浏览器需要重新发送一个HTTP请求,到服务器返回的新地址。

重定向的原因:

是为了保持并提高该网站在搜索引擎的排名。两个不同的url地址被服务器认为是两个不同的网站,当一个网站因为某些原因变更了他的url,为了保持住他原来的排名,他会在原先的url的服务器做一个设置,当有用户访问该网站时(使用旧的url),服务器会返回一个301和一个新的url地址,这样浏览器收到这个状态码,便会自动继续使用新的url发送HTTP请求。

302:临时重定向。只有在Cache-Control或Expires中进行了指定的情况下,这个响应才是可缓存的。

303:临时重定向。响应可以在另一个url上被找到,并且客户端应以GET的方式访问那个资源,同时,303禁止被缓存;当然,第二个请求(重定向)可能被缓存(如果没有设置禁止缓存)。

304:禁止包含消息体,文档内容(自上次访问以来或根据请求条件)并没有改变。

305:使用代理。

307:临时重定向。只有在Cache-Control或Expires中进行了指定的情况下,这个响应才是可缓存的。PS:部分浏览器不能识别307。

临时重定向和永久重定向的区别:

临时重定向的旧url以后还会用,只是暂时用别的url代替;永久重定向是旧url不再使用,被新的url代替。

4xx

400:错误请求,语法或参数有误。

401:未授权。

403:禁止,拒绝请求。

404:Not Found。没有找到该页面。

5xx

500:服务器内部错误。

501:不支持当前请求所需要的某个功能。

502:错误网关。

503:服务器不可用(超载或停机维护),只是暂时不可用。

504:网关超时。

505:HTTP版本不受支持。

更多HTTP状态码的详细解释:传送门

本文链接:http://www.cnblogs.com/xsilence/p/6035917.html

浏览器对于常见HTTP状态码的反应的更多相关文章

  1. 常见HTTP状态码

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

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

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

  3. 常见HTTP状态码大全

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

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

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

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

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

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

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

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

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

  8. 常见HTTP状态码列表

    HTTP状态码 当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求.当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应 ...

  9. cdnbest常见http状态码解释

    cdnbest的常见状态码提示界面: 400状态码:语义有误,当前请求无法被服务器理解 网站访问报这个提示:host not found(找不到主机),这是没有同步站点信息到这个节点上,检查节点连接主 ...

随机推荐

  1. 跨平台运行ASP.NET Core 1.0

    前言 首先提一下微软更名后的叫法: ASP.NET 5 更名为 ASP.NET Core 1.0 .NET Core 更名为 .NET Core 1.0 Entity Framework 7 更名为  ...

  2. 一个简单的后台与数据库交互的登录与注册[sql注入处理,以及MD5加密]

    一.工具: vs2013[因为我现在用的也是2013,版本随便你自己开心] sql2008[准备过久升级] 二.用到的语言: HTML+CSS+Jquery+Ajax+sqlserver HTML[相 ...

  3. 什么是Servlet?

    HTML只能用来保存静态内容,而通常情况下,静态页面很难满足实际应用的需要,鉴于此,动态页面被引入.所谓动态页面,指的是能够根据不同时间,不同用户而显示不同内容的页面,例如常见的论坛.留言板.电子商务 ...

  4. Linux-网络连接-(VMware与CentOS)

    VMware虚拟机中安装CentOS,进行网络连接,分为两步,内网连接,与外网连接. 前提: 当你正确安装VMware后,网络适配器会增加2个新的网卡:(可在设备管理器->网络适配器中查看) 第 ...

  5. MyBatis Mapper.xml文件中 $和#的区别

    MyBatis Mapper.xml文件中 $和#的区别   网上有很多,总之,简略的写一下,作为备忘.例子中假设参数名为 paramName,类型为 VARCHAR . 1.优先使用#{paramN ...

  6. WAMPServer安装和配置

    1. 下载地址:  www.wampserver.com    www.php100.com 本机下载在 安装在 2. 自定义网站根目录 设置到这里 访问localhost就会访问到自定义的目录了假设 ...

  7. JavaScript小细节点罗列

    共勉! 属性访问表达式 众所周知,JavaScript为属性的访问定义了两种语法方式: 表达式.标识符 // 表达式(指定对象) 标识符(指定需要访问的属性的名称) 表达式[表达式] //表达式1(指 ...

  8. jquery获取关于宽度和高度的尺寸问题

    作者原创,转载请出名出处! console.log("可视区高度:"+$(window).height()); console.log("可视区宽度:"+$(w ...

  9. Gui系统之View体系(2)---View的setContent

    1.从SetContentView讲起 1.1Activty的setContentView里面的内容 public void setContentView(@LayoutRes int layoutR ...

  10. Play Framework 完整实现一个APP(十一)

    添加权限控制 1.导入Secure module,该模块提供了一个controllers.Secure控制器. /conf/application.conf # Import the secure m ...