我正在检查一些遗留代码,并且发现导致响应无限期地停滞的错误。是否需要在响应头中设置Content-Length?
这里的基本思想是:
Response.Content-Type = "application/octet-stream"
Response.AddHeader("Content-Disposition", "attachment; filename" & someFileName)
Response.AddHeader("Content-Length", someStoredLength)
Response.BinaryWrite(someByteArray)
Response.Flush()
Response.End()
的问题是,someStoredLength比someByteArray的实际尺寸要大得多,所以客户端只是坐在那里等待文件下载,而浏览器只是旋转。
我在考虑只是删除指定内容长度的AddHeader,因为当我这样做时,一切似乎都正常,但我担心我不理解某些内容。
我可以删除这个AddHeader还是应该找出一个更好的方法来处理这个问题?
什么语言是什么?上述代码中的Response对象是什么类? – noctonura 2009-09-11 18:43:22
@RichAmberale:这与问题无关。由于HTTP标头,问题发生在浏览器上。 – 2009-09-11 18:47:22
该代码是在VB.NET中,但我可能会发现在其他地方传统是在ASP经典 – Joseph 2009-09-11 18:48:12