http协议与http代理(1)(4)
去掉压缩双向抓包信息
通过分析双向的数据包可以看出,若请求头无Accept-Enconding信息,则服务端的回包会以普通形式回传。如果HTTP请求头为HTTP/1.0则,回应信息无Content-Length或CHUNCK的信息字段。
GET /backend/ajax_crossdomain.aspx?callback=jQuery111007808388310950249_1393570158984&todo=jsonp&_=1393570158985HTTP/1.0 Host:www.pureexample.com Connection:keep-alive Accept: */* User-Agent:Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) UbuntuChromium/31.0.1650.63 Chrome/31.0.1650.63 Safari/537.36 Via: 1.1mtnproxy Accept-Language:zh-CN,zh;q=0.8,en;q=0.6 Cookie:__cfduid=da94308c9f886169fb62c872c48d44e7c1393554685481;ASP.NET_SessionId=yofjwnenn0cs5ijxx1jrdq55 HTTP/1.1 200 OK Server:cloudflare-nginx Date: Fri, 28 Feb2014 06:50:16 GMT Content-Type:text/html; charset=utf-8 Connection: close Cache-Control:private X-AspNet-Version:2.0.50727 X-Powered-By:ASP.NET X-Powered-By-Plesk:PleskWin CF-RAY:103b2dfbb05c0378-LAX jQuery111007808388310950249_1393570158984('[{ "Manufacturer":"HUMMER", "Sold":120, "Month":"2012-11"}]')
组成要素
HTTP协议的展示,需要4个基本的要素,包括一个规范即http协议本身以及三个实体,即资源文件、web服务器,浏览器。http协议规范了客户端与服务器之间数据交互的格式;资源文件包括html,js,css,等展示文件;web服务器用于存储资源文件,并响应浏览器的资源文件请求;浏览器从web服务器上请求资源文件,并解析展示。
图2 组成元素
如图1所示,web服务器接入于公网,ip地址为61.155.154.42, url为www.demo.com。 资源文件包括index.html,index.js,index.css,others位于服务器的虚拟根目录下,index.html索引文件index.js,index.css。
图3 资源文件
若用户在浏览器的地址栏中输入www.demo.com并回车键确认,则将触发以下流程:
· 浏览器所在客户端主机通过DNS查询,获取www.demo.com所对应的ip地址,并作为客户端与该ip地址对应的服务端建立http连接
· 浏览器向服务器发起http根请求,浏览器从本机取出根文件index.html并回应浏览器
· 浏览器从根请求回应中解析index.html文件中所引入的资源文件列表index.js,index.css等文件
· 浏览器再次分别向服务器发起index.js,index.css等文件请求
· 浏览器获取所有文件之后,解析渲染出所有资源文件,提供ui接口给用户
图4 资源获取流程
评论暂时关闭