我正在使用 Python/Twisted 开发一个 Web 应用程序。
我希望用户能够下载一个非常大的文件(> 100 Mb)。当然,我不想将所有文件加载到(服务器的)内存中。
服务器端我有这个想法:
...
request.setHeader('Content-Type', 'text/plain')
fp = open(fileName, 'rb')
try:
r = None
while r != '':
r = fp.read(1024)
request.write(r)
finally:
fp.close()
request.finish()
我希望这可以工作,但我遇到了问题:我正在使用 FF 进行测试......似乎浏览器让我等到文件下载完成,然后我有打开/保存对话框。
我希望立即出现对话框,然后进度条正在运行......
也许我必须在 Http 标头中添加一些东西......文件大小之类的东西?