请问如何实现边生成边传输?
网上查到的代码如下:
from time import sleep
from flask import Flask, Response, stream_with_context
app = Flask(__name__)
@app.route('/stream', methods=['GET'])
def stream():
def generate():
for i in range(1, 21):
print(i)
yield f'This is item {i}\n' # 生成流数据
# 在生成每个数据项后可以添加一些适当的延时或其他逻辑
sleep(0.5)
return Response(generate(),
mimetype='text/plain')
if __name__ == '__main__':
app.run(debug=True)
这个效果不对, 上面的代码会等待generate()结束才开始浏览器才显示文本.
我希望是能一边执行一边返回
好好看文档哦 https://flask.palletsprojects.com/en/2.1.x/patterns/streaming/