Python 为什么';使用stream_模板进行演示工作?
我正在尝试让SSE(服务器发送事件)演示在flask中工作Python 为什么';使用stream_模板进行演示工作?,python,flask,server-sent-events,Python,Flask,Server Sent Events,我正在尝试让SSE(服务器发送事件)演示在flask中工作 @app.route('/sse-demo') def sse(): def delay(): for i, c in enumerate("hello"*10): time.sleep(.5) # an artificial delay yield i, c # with render_template it works! #return ren
@app.route('/sse-demo')
def sse():
def delay():
for i, c in enumerate("hello"*10):
time.sleep(.5) # an artificial delay
yield i, c
# with render_template it works!
#return render_template('sse_demo.html', data=g())
# with stream_template it doesn't work!
return Response(stream_template('sse_demo.html', data=delay()))
我的sse_demo.html模板如下所示
<!doctype html>
<title>Send javascript with template demo</title>
<script src="/static/js/jquery.min.js"></script>
<style>
#data {
text-align: center;
}
</style>
<div id="data">nothing received yet</div>
{% for i, c in data: %}
<script>
$("#data").text("{{ i }} {{ c }}")
</script>
{% endfor %}
发送带有模板演示的javascript
#资料{
文本对齐:居中;
}
还没有收到任何东西
{数据中i,c的百分比:%}
$(“#数据”).text(“{{i}}{{{c}”)
{%endfor%}
它可以与渲染_模板配合使用。我看到/sse演示url将1h打印到49o
但是,使用流_模板,我的页面会等待一段时间并打印49o
为什么?