您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如果请求中止,则停止处理Flask路线

如果请求中止,则停止处理Flask路线

一个潜在的… hacky解决方案来解决您的问题。Flask能够通过生成器将内容流回给用户。hacky部分将流空白数据,以检查连接是否仍然打开,然后在您的内容完成后,生成器可以生成实际图像。您的生成器可以检查处理是否完成并返回,None或者如果处理未完成则进行""任何检查。

from flask import Response

@app.route('/image')
def generate_large_image():
    def generate():
        while True:
            if not processing_finished():
                yield ""
            else:
                yield get_image()
    return Response(generate(), mimetype='image/jpeg')

我不知道如果客户端关闭连接会遇到什么异常,但我敢打赌 error: [Errno 32] Broken pipe

Python 2022/1/1 18:25:23 有410人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶