Shu-How Zの小窝

Loading...

HTTP协议详解

HTTP协议详解

https://www.bilibili.com/video/BV1js411g7Fw/

P1 0x00-HTTP协议概念及工作流程

P2 0x01-HTTP协议之方法与状态码

options 探测支持哪些方法

200-服务器成功返回网页
301/2-永久/临时重定向
304 Not Modified-未修改
失败的状态码:
404-请求的网页不存在
503-服务器暂时不可用
500-服务器内部错误

307 重定向中保持原有的请求数据

P3 0x02-socket编程发送GET请求

P4 0x03-socket编程批量发帖

Content-type:application/x-www-form-urlencoded

P5 0x04-http协议模拟登陆发帖

www.zixue.it

P6 0x05-referer头与防盗链

在 Http协议中,头信息里,有一个重要的选项:Referer Referer:代表网页的来源,即上一页的地址
如果是直接在浏览器上输入地址,回来进来,则没有 Referer头.
这也是:为什么服务器知道我们的图片是从哪儿引用的,也知道我们的客户从哪个网站链接点击过来的.

改referer 反防盗链

P7 0x06-http缓存详解

HTTP 协议缓存控制
我们观察图片的下载.往往:
第1 次请求时 200 ok
第2次请求时 304 Not Modified 未修改状态
解释:在网络上,有一些缓存服务器,另,浏览器自身也有缓存功能.
当我们第一次某图片时,正常下载图片,返回值200
基于一个前提--图片不会经常改动,服务器在返回 200 的同时,还返回该图片的“签名”--Etag,(签名可以理解图片的"指纹")
.当浏览再次访问该图片时,去服务器校验"指纹”
如果图片没有变化.直接使用缓存中的图片,这样减轻了服务器负担

第一次响应头 ETag last-modified

第二次请求头 If-modified-Since If-none-Match

如果是 304,就意味着浏览器从本地取缓存,节省了图片在网络上传输的时间.

Apache 缓存图片

P8 0x07-http内容压缩

Content-encodimg:gzip

原理:为了提高网页在网络上的传输速度,服务器对主体信息进行压缩.
如常见的 gzip 压缩,deflate 压缩。compress 压缩以及 google chrome 正在推的 sdch 压缩.

刚才那个情况的原因-----服务器对页面进行了压缩,而 content-length是"压缩后"的长度

为什么要指定文件类型来压缩?
答:压缩也是要耗CPU资源的,图片/视频等文件,压缩效果也不好.
一般压缩文本格式.

客户端允许发一个 Accept-Encoding 头信息,与服务器协商. 判断浏览器支持什么压缩

P9 0x08-comet反向ajax

HTTP 协议与技久链接+分块传输--->反向ajax反向
ajax又叫 comet,server push,服务器推技术.
应用范围:网页聊天服务器,新浪微博在线聊天,google mail网页聊天,都有用到.

posted @ 2024-12-14 18:26  KooTeam  阅读(13)  评论(0)    收藏  举报