Przeglądam jakiś staroświecki kod i znalazłem błąd, który powoduje, że odpowiedź jest wyświetlana w nieskończoność.Czy należy ustawić długość treści w nagłówku odpowiedzi?
Oto podstawowa idea:
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()
Problemem jest to, że someStoredLength jest znacznie większy niż rzeczywisty rozmiar someByteArray, więc klient po prostu siedzi tam czeka na pobranie pliku, podczas gdy przeglądarka po prostu kręci.
Zastanawiam się nad usunięciem AddHeadera, który określa długość zawartości, ponieważ kiedy to robię, wszystko działa dobrze, ale martwię się, że czegoś nie rozumiem.
Czy mogę usunąć ten AddHeader, czy powinienem wymyślić lepszy sposób na rozwiązanie tego problemu?
Co to za język? Jaką klasą jest obiekt Response w powyższym kodzie? – noctonura
@RichAmberale: To nie ma znaczenia dla pytania. Problem występuje w przeglądarce z powodu nagłówków HTTP. –
Kod znajduje się w VB.NET, ale mogę go znaleźć w innych miejscach, gdzie dziedzictwo jest wykonywane w klasycznej ASP – Joseph