使用HTTP响应头中的Content-Length在Flask中提供静态文件

时间:2014-08-09 17:58:03

标签: python flask

我正在编写一个小型的Python Flask应用程序,允许人们从我的服务器下载文件。这些文件将由Python提供,而不是像Nginx或Apache这样的Web服务器。

我尝试使用send_from_directory()send_file()我可以下载我的文件,但没有文件大小,因为它错过了标题中提交的Content-Length

我在使用send_from_directory()send_file()时如何添加标题。或者还有其他更好的方法来做到这一点。

谢谢。

1 个答案:

答案 0 :(得分:0)

如果您将send_file()文件名(不是文件对象)一起使用,Flask会自动为您设置Content-Length标题。

send_from_directory()使用带有文件名的send_file(),因此您可以在那里设置。

确保使用Flask 0.10或更新版本;标题代码已添加到该版本中。