Flask SSE协议接口简单范例

import time
from flask import Flask, Response

app = Flask(__name__)


@app.route('/stream')
def stream():
    def generate():
        yield "data: Hello, world!\n\n"
        time.sleep(1)
        yield "data: How are you?\n\n"
        time.sleep(2)
        yield "data: I'm fine, thanks.\n\n"
        time.sleep(3)
        yield "data: Goodbye.\n\n"

    return Response(generate(), mimetype='text/event-stream')


if __name__ == '__main__':
    app.run(debug=True)

这个示例代码使用了Flask框架,并创建了一个/stream路由,当向该路由发送HTTP GET请求时(浏览器中访问http://127.0.0.1:5000/stream),就会返回一个SSE事件流。在事件流中,每次间隔一段时间后会发送一条消息。其中data字段代表消息内容,\n\n表示该条消息结束。

你可能感兴趣的:(flask,python,后端)