通用首部:客户端和服务器都可以使用的通用首部,比如Status Code:

请求首部:请求首部是请求报文特有的,它们为服务器提供了一些额外信息,例如Accept: */*

用来告知服务器客户端会接受与请求相符的任意媒体类型

响应报文:响应报文有自己的首部集,以便为客户端提供信息

具体的请求首部:

  Accept-Encoding:  告诉服务器能够发送哪些编码方式

  Accept-Language: 告诉服务器能够发送哪些语言

  Accept-Charset: 告诉服务器能够发送哪些字符集

  Accept-Ranges:这个字段说明Web服务器是否支持Range(是否支持断点续传功能),如果支持,则返回Accept-Ranges:

bytes,如果不支持,则返回Accept-Ranges: none

  Range: Range字段头通过服务器只传输一部分Web资源。这个字段头可以用来实现断点续传功能

  格式有三种:

    (1)Range: bytes=1000-2000  传输范围从1000到2000字节

    (2)Range: bytes=1000-  传输Web资源中第1000个字节以后的所有内容

    (3)Range bytes=1000  传输最后1000个字节

下面介绍几个响应报文缓存首部:

  Cache-Control: no-store    禁止缓存服务器缓存响应实体

  Cache-Control: no-cache  每次请求都去原始服务器取内容

  Cache-Control: must-revalidate  首次访问会去原始服务器验证新鲜度,在浏览器地址栏

回车后直接从缓存中响应

补充:各种状态码简介

  200  OK   请求没问题,实体的主体部分包含了请求的资源

  206  Partial Content  成功执行了一个部分或Range(范围)请求,客户端可以通过一些

特殊的首部来获取部分或某个范围内的文档------这个状态码就说明范围请求成功了,206响应中必须包含Content-Range, DATE, 以

及ETag或Content-Location首部

  301  Move Permanently  在请求的URL已被移除时使用,响应Location首部中应该包含资源现在所处的URL

  302  Found  与301状态码类似,客户端使用Location首部给出的URL来临时定位资源,将来的请求仍应使用老的URL  

   304  Not Modified  客户端发起一个条件GET请求,而最近资源未被修改的话,就可以用这个状态码说明,带有这个状态码

的响应不应该包含实体的主体部分

  400  Bad Request  用于告知客户端它发送了一个错误的请求

  403  Forbidden  请求被服务器拒绝,这个状态码通常是在服务器不想说明拒绝原因的时候使用

  404  Not Found  说明服务器无法找到请求的URL

  405  Method Not Allowed  发起的请求中带有所请求的URL不支持的方法时,使用此状态码,应该在响应中包含Allow首

部,告知客户端对所请求的资源支持哪些方法

  500  Internal Server Error  服务器遇到一个妨碍它为请求提供服务的错误时,使用此状态码

  502  Bad Gateway  作为代理或网关使用的服务器从请求响应链的下一条链路上收到一条伪响应(比如它无法连接到其父网

关)时,使用此状态码

  503  Service Unavailable  说明服务器现在无法为请求提供服务,但将来可以,如果服务器知道什么时候资源变为可用,

可以在响应报文中包含一个Retry-After首部

  

HTTP首部及各状态码的更多相关文章

  1. HTTP协议简介详解 HTTP协议发展 原理 请求方法 响应状态码 请求头 请求首部 java模拟浏览器客户端服务端

    协议简介 协议,自然语言里面就是契约,也是双方或者多方经过协商达成的一致意见; 契约也即类似于合同,自然有甲方123...,乙方123...,哪些能做,哪些不能做; 通信协议,也即是双方通过网络通信必 ...

  2. 《图解Http》 2-6章: 基础,报文,状态码,首部。

    HTTP协议和Cookie 是stateless协议,自身不对请求和响应之间的通信状态进行保存.但随着技术发展,为了实现保存状态的功能,引入了Cookie技术. Cookie在请求和响应报文中写入信息 ...

  3. 计算机网络相关知识(http状态码 && 首部字段)

    计算机网络相关知识 计算机网络的知识还是非常重要的, 这里做一个简单的总结. 推荐阅读文章:http://www.cnblogs.com/TankXiao/archive/2012/02/13/234 ...

  4. HTTP常用状态码分析

    不管是面试还是工作中,经常会碰到需要通过HTTP状态码去判断问题的情况,比如对于后台RD,给到前端FE的一个接口,出现502或者504 error错误,FE就会说接口存在问题,如果没有知识储备,那就只 ...

  5. 「理解HTTP」之常见的状态码segmentfault

    状态码的职责是当客户端向服务器端发送请求时,描述返回请求结果.借助状态码,用户可以知道服务器端是正常处理了请求,还是出现了什么错误. RFC2616定义的状态码,由3位数字和原因短信组成.数字中的第一 ...

  6. HTTP的报文与状态码

    本文是<HTTP权威指南>的读书笔记 HTTP报文是简单的格式化数据块.每条报文都包含一条来自客户端的请求或一条来自服务器的响应.它们由三部分组成: 对报文进行描述的起始行(start l ...

  7. http协议(四)http状态码

    一:http状态码 表示客户端http请求的返回结果.标记服务器端的处理是否正常.通知出现的错误等工作 状态码的类别如下: http状态码种类繁多,大概有60多种,实际上经常使用的只有14种,下面为一 ...

  8. 使用curl获取网站的http的状态码

    发布:thebaby   来源:net     [大 中 小] 本文分享一例shell脚本,一个使用curl命令获取网站的httpd状态码的例子,有需要的朋友参考下.本文转自:http://www.j ...

  9. 常见的HTTP状态码深入理解

    状态码的职责是当客户端向服务器端发送请求时,描述返回请求结果.借助状态码,用户可以知道服务器端是正常处理了请求,还是出现了什么错误. RFC2616定义的状态码,由3位数字和原因短信组成. 数字中的第 ...

随机推荐

  1. SPCOMM的一些用法注意

      使用串口SPCOMM接收数据的时候0x11和0x13无法接受,从时间间隔上看来可以接收,但是无法显示.网上查错误得: --------------------------------------- ...

  2. 动画的特效Interpolator

    AccelerateDecelerateInterpolator 在动画开始与结束的地方速率改变比较慢,在中间的时候加速 AccelerateInterpolator  在动画开始的地方速率改变比较慢 ...

  3. JDK6的switch支持不是很好

    在switch中只支持int或者枚举型值: 不支持其他类型,如String,会报错 Cannot switch on a value of type String for source level b ...

  4. 【转】iOS高级向的十道面试问题

    原文:http://onevcat.com/2013/04/ios-interview/ 不管对于招聘和应聘来说,面试都是很重要的一个环节,特别对于开发者来说,面试中的技术问题环节不仅是企业对应聘者技 ...

  5. 06-模仿系统的UIImageView

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  6. appium的xpath定位

    做自动化,元素定位是我们遇到的第一个困难.总是会有各种各样的问题,导致我们定位不到元素.前面一篇博客也写了元素定位的几种方法,今天主要分享一下xpath的定位方法. 这里我们仍然拿计算器举例. 比如我 ...

  7. 欧几里得算法与扩展欧几里得算法_C++

    先感谢参考文献:http://www.cnblogs.com/frog112111/archive/2012/08/19/2646012.html 注:以下讨论的数均为整数 一.欧几里得算法(重点是证 ...

  8. [系统] 安装Ubuntu 双系统 - 失败

    因为工作原因, 所以需要装ubuntu系统. 在网络上查了一下, 一般都是使用U盘安装. 但是由于手头上既没有U盘又没有光盘,只能用硬盘安装了. 查一下, 使用wubi安装方式从硬盘安装, 非常方便. ...

  9. Yii 中比较常用的rules验证规则记录

    查看代码   打印 01 return array( 02   03     //必须填写 04     array('email, username, password,agree,verifyPa ...

  10. EndNote文献管理

    一直想写个博客,但是一直没有好好坐下来对自己工作进行一个梳理.从今天开始吧,争取多写一点. 今天,先介绍一下科技论文写作中经常使用的一款软件EndNote,这个软件,掌握它的使用方法后会觉得很方便:但 ...