我仍在努力将文件流式传输到 Pylons 中的 HTTP 响应。除了原始问题之外,我发现我无法返回 Content-Length 标头,因此对于大文件,客户端无法估计下载需要多长时间。我试过了
response.content_length = 12345
我试过了
response.headers['Content-Length'] = 12345
在这两种情况下,HTTP 响应(在 Fiddler 中查看)根本不包含 Content-Length 标头。如何让 Pylons 返回此标头?
(哦,如果您对使其流式传输文件有任何想法,请回复原始问题 - 我完全没有想法。)
编辑:虽然不是通用解决方案,但用于提供静态文件FileApp
允许发送 Content-Length 标头。对于动态内容,看起来Alex Martelli的答案是唯一的选择。