IE 6和分块编码问题

时间:2010-07-09 18:14:00

标签: asp.net http iis-6

我遇到了此处记录的问题:

http://support.microsoft.com/kb/914453

  

您可以访问Web应用程序或Web   来自使用的Web服务器的站点   分块上的分块传输编码   基于Microsoft Windows Server 2003或   在基于Microsoft Windows XP的上   电脑。然后,浏览器或Web   应用程序停止响应。

     

当出现此问题时   Wininet.dll文件收到   期间不完整的数据块   最初的Winsock数据接收   操作。出现这种情况时,   第二个Winsock数据接收   operation只读取一个块令牌。   例如,第二个Winsock数据   接收操作可能只读   来自的回车换行(CRLF)   插座。然后,Wininet.dll文件   连续打电话给Winsock   选择功能30秒。该   文件正在等待接收更多数据。   但是,如果没有数据到达,那么   浏览器或Web应用程序停止   响应。

我已经实现了从数据库中检索文件的HttpHandler问题。相关代码是:

var buffer = GetSomeByteArray();
context.Response.Clear();
context.Response.ContentType = type;
context.Response.BinaryWrite(buffer);                        
context.Response.End();

我可以通过关闭动态压缩或者不将.axd指定为可压缩文件类型来禁用IIS 6级别的分块编码,但我不想这样做。我的问题是,我的代码中是否存在错误或者我没有做的事情我应该这样会阻止浏览器接收不完整的块?

1 个答案:

答案 0 :(得分:0)

你的代码很好。这些文件有多大?如何使用内容处理:附件?还有什么内容类型?