time.sleep阻止烧瓶请求

时间:2019-07-03 09:46:59

标签: flask server-sent-events

我正在使用flask实现服务器发送的事件。如果我在函数中使用time.sleep,则sse不返回任何内容,并且请求在浏览器中保持待处理状态。如果我不使用睡眠,那么浏览器中的响应就会过载,因此我需要使用一些延迟。为什么time.sleep阻止请求?还有另外一种方法可以在这里添加时间延迟吗?

def get_message():
    time.sleep(1.0)
    s="xyz" #some function here for our business logic
    return s


@app.route('/stream')
def stream():
    def eventStream():
        while True:
            yield 'data: {}\n\n'.format(get_message())
    return Response(eventStream(), mimetype="text/event-stream")

0 个答案:

没有答案