我仍在努力達到Stream a file to the HTTP response in Pylons。除了原始問題之外,我發現我無法返回Content-Length標題,因此對於大型文件,客戶端無法估計下載將花費多長時間。我已經試過內容長度標題未從標語響應返回
response.content_length = 12345
和我試圖
response.headers['Content-Length'] = 12345
在兩種情況下的HTTP響應(在提琴手觀察)根本不包含的Content-Length頭。我如何讓Pylons返回這個頭文件?
(哦,如果你有使它流的文件請回復到原來的問題任何想法 - 我所有的想法在那裏。)
編輯:而不是一個通用的解決方案,用於提供靜態文件FileApp
allows sending the Content-Length header。對於動態內容,它看起來像Alex Martelli的答案是唯一的選擇。
謝謝,亞歷克斯,中間件作品的那一點。我甚至不需要修改它 - 因爲無論如何我無法讓「流式傳輸」工作,調用'len(body)'返回正確的值。不過,我不確定爲什麼這麼簡單的事情需要一些「中間件」。 恭喜擊中100K,順便說一句! – EMP 2010-05-06 04:20:02
@evgeny,如果你能說服Pylons的提交者說內容的長度應該總是被返回,你就會贏得包括我在內的每個人的感激 - 但看起來他們還是相信了。感謝恭喜! - ) – 2010-05-06 04:23:40
好吧,不要介意「永遠」,但至少如果我手動將它設置在標題中它應該被返回! – EMP 2010-05-06 23:01:35