猫头哥的HTTP协议教程(二)报文

[size=xx-large]HTTP报文结构[/size]
报文首部
空行(CR+LF)
报文主体

[size=xx-large]报文传输[/size]
压缩传输的内容
gzip:GUN zip
compress:unix系统的标准压缩
deflate:zlib
identity:不进行编码

[size=xx-large]分割发送的分块传输编码[/size]
在传输大容量数据是,通过把数据分割成多块,能够让浏览器逐步显示页面。通过把实体主体分块的功能成为分块传输编码(Chunked Transfer Coding)

[size=xx-large]多种数据的多部分对象集合[/size]
发送的一份报文主体内可含有多类型实体。
1)multipart/form-data:在WEB表单文件上传时使用。
使用boundary字符串来划分多部分对象集合指明的各类实体。在boundary字符串指定的各个实体的起始行之前插入“--”标记(例如 --ZADSFA,--aBdEDDENG ),而在多部分对象集合对应的字符串最后插入“--”标记(例如:--adfaA--)作为结束。
2)multipart/byteranges:状态码206,(Partial Content,部分内容)相应报文包含了多个范围的内容时使用。

[size=xx-large]获取部分内容的范围请求[/size]
首部中使用Range
例如 Range: bytes=5001-10000
响应如果支持:则返回首部包含
Content-Range:bytes 5001-10000/10000
也可以支持多重范围
Range:bytes=-3000,5000-7000
相应返回的状态码为:206 Partial Content

[size=xx-large]内容协商[/size]
对同一URL返回不同的语言内容,例如www.google.com可以返回中文页面,也可以返回英文页面。
对于www.baidu.com可以返回PC版,也可以返回移动版。
利用请求报文中的首部字段:包括
Accept
Accept-Charset
Accept-Encoding
Content-Language
User-Agent
来作为判断基准。
1)服务器驱动协商:参考首部字段
2)客户端驱动协商:javascript处理
3)通明协商
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猫头哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值