http协议与http代理(1)(3)
代码清单test.html:
- <script src="jquery.js"></script>
- <!-- Javascript -->
- <script type="text/javascript">
- $(document).ready(function (){
- $("#btn392").click(function(){
- var url = "http://www.pureexample.com/backend/ajax_crossdomain.aspx";
- //var url = "http://127.0.0.1:5000";
- //[{ "Manufacturer": "HUMMER", "Sold": 120, "Month": "2012-11"}]
- var success = function(data){
- var html = [];
- data = $.parseJSON(data); /* parse JSON */
- /* loop through array */
- $.each(data, function(index, d){
- html.push("Manufacturer : ", d.Manufacturer, ", ",
- "Sold : ", d.Sold, ", ",
- "Month : ", d.Month, "<br>");
- });
- $("#div391").html(html.join('')).css("background-color", "orange");
- };
- $.ajax({
- type: 'GET',
- url: url,
- data:{todo:"jsonp"},
- dataType: "jsonp",
- crossDomain: true,
- cache:false,
- success: success,
- error:function(jqXHR, textStatus, errorThrown){
- alert(errorThrown);
- }
- });
- });
- });
- </script>
- <!-- HTML -->
- <a name="#jsonp-ajax"></a>
- <div id="example-section39">
- <div>Car sale report</div>
- <div id="div391"></div>
- <button id="btn392" type="button">Click </button>
- </div>
普通情况下双向抓包信息:
GET /backend/ajax_crossdomain.aspx?callback=jQuery111006746286363340914_1393568973731&todo=jsonp&_=1393568973732HTTP/1.1 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 Accept-Encoding:gzip,deflate,sdch /* 回包压缩 */ Accept-Language:zh-CN,zh;q=0.8,en;q=0.6 Cookie:__cfduid=da94308c9f886169fb62c872c48d44e7c1393554685481 HTTP/1.1 200 OK Server:cloudflare-nginx Date: Fri, 28 Feb2014 06:31:01 GMT Content-Type:text/html; charset=utf-8 Transfer-Encoding:chunked Connection:keep-alive Cache-Control:private Vary:Accept-Encoding Set-Cookie:ASP.NET_SessionId=yofjwnenn0cs5ijxx1jrdq55; path=/; HttpOnly X-AspNet-Version:2.0.50727 X-Powered-By:ASP.NET X-Powered-By-Plesk:PleskWin CF-RAY:103b11cb0d290378-LAX Content-Encoding:gzip 78 /* chunck大小为0x78字节*/ ........... /* 回包为压缩形式 */ ,M-.4444003713.0363661.44.74.465..47676.P..V..%..........."%+.%.P__.%..dp~N P........+...2204.54T..U....... a ...t..t... 0
通过分析双向的数据包可以看出,若请求头的Accept-Enconding为gzip,则服务端的回包会以压缩数据的形式回传。
评论暂时关闭