关于Http中Transfer-Encoding: chunked问题

来源:互联网 发布:网络机顶盒占用网速 编辑:程序博客网 时间:2024/05/22 09:21

Http1.1中新增加内容, Transfer-Encoding: chunked   译为:分包传输

 进行一次请求时,如果数据量较大,为了加快页面显示,而采取了分包的策略


在.net中

WebPag 默认不分包

MVC4 默认分包


一般简单的服务器交互流程

比如,需要服务器返回一个字符串(test),

不分包时传回内容为

test

分包情况下传回内容为

4

test

0

 

这样,在传输像Json这种数据时,解析起来就比较麻烦


禁止方法:

客户端禁止方法:

使用Http 1.0试调用

System.Net.HttpWebRequest Myrq = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.CreateDefault(uri);
                Myrq.ProtocolVersion = new Version(1, 0);  //通过设置协议为1.0


服务端禁止方法:

            byte[] bJson = Encoding.UTF8.GetBytes(strJson);
            //string strAA = Encoding.UTF8.GetString(bJson);


            Response.AddHeader("Content-Length", bJson.Length.ToString());//将长度添加到协议头中



0 0
原创粉丝点击