擅长:python、mysql、java
<p>你有两个选择:</p>
<ol>
<li><p>打开文件并分块读取,而不是像在代码中那样将其作为单个blob读取。以下示例来自:<a href="https://stackoverflow.com/a/24318158/1955346">https://stackoverflow.com/a/24318158/1955346</a>:</p>
<pre><code>from flask import stream_with_context, Response
@app.route('/stream_data')
def stream_data():
def generate():
with open("/root/media_assets/" + file["path"], "rb") as f:
while True:
chunk = ... # read each chunk or break if EOF
yield chunk
return Response(stream_with_context(generate()), mimetype="video/mp4")
</code></pre></li>
<li><p>使用来自<a href="https://stackoverflow.com/questions/5166129/how-do-i-stream-a-file-using-werkzeug/5166423#5166423">How do I stream a file using werkzeug?</a>的直接方法:
<code>
return Response(file("/root/media_assets/" + file["path"]), direct_passthrough=True)
</code></p></li>
</ol>