http协议(十)实体首部字段

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的介绍,握手,数据传输的方式以及几种数据传输方法,请求响应报文的类型,字段等知识。。。

posted @ 2016-08-11 17:50  老_张  阅读(3151)  评论(2编辑  收藏  举报