1、定义

包含在请求和响应中的实体部分所使用的首部,用于补充内容的更新时间等与实体相关的信息

2、Allow

通知客户端能够支持的Request-URI指定资源的所有http方法  如果服务器接收到不支持的方法,会返回状态码405Method Not Allowed作为响应返回

Allow:GET, HEAD

3、Content-Encoding

告知客户端服务器对实体的主体部分的选用的内容编码方式

内容编码指在不丢失实体信息的前提下所进行的压缩

主要采用以下这四种内容编码方式

gizp,conpress,deflate,identity

Content-Encoding: gizp

4、Content-Lanuage

告知客户端实体主体使用的自然语言(优先接收的语言)

Content-Lanuage: zh-CN

5、Content-Length

表明实体主体部分的大下(单位是字节)

若对实体主体进行编码传输,不能使用该字段

Content-Length: 15000

6、Content-Location

给出了与报文主体部分相对应的URI。与Location不同,该字段表示的是报文主体返回资源的URI

Content-Location: http://www.baidu/com/index-miss.html

7、Content-MD5

由一串由MD5算法生成的值,其目的在于检查报文 主体在传输中是否保持完整,以及确认传输到达。

Content-MD5: OFJKGKLDFUIGNG35565FGNHLDGNH==

8、Content-Range

告知客户端作为响应返回的实体的哪个部分符合范围请求,(单位:字节),表示当前发送部分及整个实体大小

Content-Range: bytes 5001-10000/10000

9、Expires

告知客户端资源失效的日期

如果首部字段存在Cache-Control有指定max-age指定时,会优先处理max-age指令

Expires: Wed, 04 Jul 2016 09:26:05 GMT

10、Last-Modified

指明资源的最终修改的时间

Last-Modified: Wed, 04 Jul 2016 09:26:05 GMT

这部分主要是附带说说,一般工作中不常用到,但了解也是很有好处的 -  -

为Cookie服务的首部字段

Cookie的工作机制是用户识别及状态管理。

实现原理:方便管理用户状态,通过web浏览器将一些数据临时写入用户的计算机内,当用户访问时可通过通信方式取回之前发送的Cookle

调用Cookie的时候,由于可以调用Cookie的有效期,以及发送方的域、路径、协议等信息,所以正规发布的Cookie不是因为来自其他web站点和攻击者的攻击而泄漏

为Cookle服务的首部字段:

 

1、Set-Cookie字段的属性:

1)expires

指定浏览器可发送Cookie的有效期

若不指定则默认为会话时间段内

一旦Cookie从服务端发送到客户端,服务器就不存在可显式删除Cookie的方法,但可通过覆盖已过期的Cookie,实现对客户端的实质性删除

2)path

用于限制指定Cookie发送范围的文件目录

3)domain

通过该属性指定的域名可做到与结尾匹配一致

除了针对具体指定的多个域名发送的Cookie外,不指定domain属性显得更安全

4)secure

限制web界面仅在HTTPS安全连接时,才可以发送Cookie

发送Cookie时,指定属性的方法如下:

Set-Cookie: name=value; secure

5)HttpCookie

Cookie的扩展功能,使JavaScript脚本无法获得Cookie。主要目的是为了防止跨站脚本攻击对Cookie的信息窃取

发送指定HttpOnly属性的方法如下:

Set-Cookie: name=value; HttpOnly

2、Cookie

告知服务器,客户端想获得http状态管理支持时,就会在请求中包含从服务器接收到的Cookie。接收多个时,同样可以以多个发送

到这里基本关于http协议的基础就整理完了,整个的思路大概就是对TCP/IP的介绍,握手,数据传输的方式以及几种数据传输方法,请求响应报文的类型,字段等知识。。。

http协议(十)实体首部字段的更多相关文章

  1. Content-Type实体首部字段

      现代互联网下,每天都会有数以亿计的各种媒体对象经由HTTP传输,如图像,文本,影视以及软件程序等.这些数据都包含在HTTP报文的实体内容中,如果把HTTP报文想像成一份快递,HTTP实体就是快递实 ...

  2. HTTP协议10-实体首部字段

    实体首部字段 实体首部字段是包含咋请求报文和响应报文中实体部分的首部,用于补充内容的更新时间等于实体相关的信息. 1)Allow Allow:GET,HEAD 用于通知客户端能够支持访问指定资源的请求 ...

  3. http协议基础(十)实体首部字段

    1.定义 包含在请求和响应中的实体部分所使用的首部,用于补充内容的更新时间等与实体相关的信息 2.Allow 通知客户端能够支持的Request-URI指定资源的所有http方法:如果服务器接收到不支 ...

  4. HTTP协议08-请求首部字段

    请求首部字段 请求首部字段是从客户端往服务器端发送请求报文中所使用的字段,用于补充请求的附加信息.客户端信息,对响应内容相关的优先级等内容 1)Accept 通知服务器,用户代理能够处理的媒体类型及媒 ...

  5. HTTP协议07-通用首部字段

    通用首部字段 通用首部字段是指,请求报文和响应报文双方都会使用的首部. 1)Cache-Control 通过指定首部字段Cache-Control的指令,就能操作缓存的工作机制. 指令的参数可以多选, ...

  6. HTTP协议09-响应首部字段

    响应首部字段 响应首部字段是由服务器向客户端返回响应报文中所使用的字段,用于补充响应的附加信息.服务器信息,以及对客户端的附加要求等信息. 1)Accept-Ranges Accept-Range:b ...

  7. HTTP 协议常见首部字段

    首部字段 1.HTTP协议的请求和响应报文中必定包含HTTP首部.首部内容为客户端和服务器处理请求和响应提供了所必须的信息. 2.HTTP首部字段是由首部字段名和字段值构成,中间用冒号“:”隔开.字段 ...

  8. HTTP协议图--HTTP 报文首部之首部字段(重点分析)

    1.首部字段概述 先来回顾一下首部字段在报文的位置,HTTP 报文包含报文首部和报文主体,报文首部包含请求行(或状态行)和首部字段. 在报文众多的字段当中,HTTP 首部字段包含的信息最为丰富.首部字 ...

  9. HTTP全部报文首部字段

    总结了一下HTTP各种报文首部字段. HTTP报文类型与结构 HTTP报文结构 报文首部 空行(CR+LF) 报文主体 HTTP报文类型 http有两种类型报文,请求报文和响应报文两种报文的首部结构如 ...

随机推荐

  1. 两个Service之间相互监视的实现

    在实际开发中可能需要用到两个Service相互监视的情况,本示例就是实现此功能以作参考. 服务A: public class ServiceA extends Service { private st ...

  2. IOS 四舍五入 进一法 去尾法

    float numberToRound; int result; numberToRound = 4.51; result = (int)roundf(numberToRound); NSLog(@& ...

  3. Java中的经典算法之选择排序(SelectionSort)

    Java中的经典算法之选择排序(SelectionSort) 神话丿小王子的博客主页 a) 原理:每一趟从待排序的记录中选出最小的元素,顺序放在已排好序的序列最后,直到全部记录排序完毕.也就是:每一趟 ...

  4. 数据存储与IO(二)

    一.NSBundle资源包. 只要把文件拖到Xcode左边项目导航面板中,选择复制文件到项目中,该文件就包含进bundle中了.用[NSBundle mainBundle]获取应用程序包,常用的方法: ...

  5. C++语言-05-三大特性

    概述 C++ 是面向对象的语言,具备 OOP 的基本特性. 封装 概念 将数据和操作数据的函数绑定在一起 作用 避免受到外界的干扰和误用,确保了安全 与封装相关的概念 数据抽象 仅向用户暴露接口而把具 ...

  6. IOS开发之待探究随录

    设置导航条的问题

  7. 深入浅出Block的方方面面

    内容大纲: 1.Blocks概要 2.Blocks模式 3.Block实质(面试常问重点) 1.Blocks概要 什么是Blocks:Blocks是C语言的扩充的功能,可以用一句话来表示Blocks的 ...

  8. 百度地图TILE算法

    Creating primary keyvar LLBAND2 = [75, 60, 45, 30, 15, 0]; var LL2MC2 = [[-.0015702102444, 111320.70 ...

  9. 代码合并工具——Beyond Compare

    由于公司现在人比较多,存在多个小组同时开发一个项目的情况.为避免不同小组之间代码的冲突,我们的SVN采用了打分支的情况. 这造成我们自己小组的内容上线后要合并到不同的分支和主干上去. 于是就找了这个合 ...

  10. 开源游戏 “Elvish Bird”

    简介: 这个游戏是我在今年(2014/03)课余时闲着无聊做的一个冒险类小游戏,总共花了5个工作日才完成,为了游戏的效率,做了很多优化,目前在IE8以上浏览器能够流畅运行,运行时如果屏幕分辨率不兼容, ...