いくつかのレガシー コードを確認していて、応答が無期限に停止するバグを発見しました。
基本的な考え方は次のとおりです。
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 を削除してもよろしいですか、それともこの問題に対処するためのより良い方法を考え出す必要がありますか?