GET 请求复制转发一直等待响应的问题 Transfer-Encoding: chunked

今天在做Proxy 转发请求的时候发现 GET的请求转发时一直在等待输出。

而Post等其它操作是可以的。

同事告诉我一般一直等待响应可能是输出内容长度和头部ContentLength不一致导致的,

仔细一看服务器响应头中有Transfer-Encoding: chunked

Transfer-Encoding: chunked 表示输出的内容长度不能确定,普通的静态页面、图片之类的基本上都用不到这个。
但动态页面就有可能会用到,但我也注意到大部分asp,php,asp.net动态页面输出的时候大部分还是使用Content-Length,没有使用Transfer-Encoding: chunked。

所以在转发的响应的时候移除该头就可以了context.Response.Headers.Remove("Transfer-Encoding");

posted @ 2017-04-12 14:19  Loui  Views(930)  Comments(0Edit  收藏  举报