the*_*ght 6 python asynchronous background response flask
我正在使用Flask在python应用程序中开发Web服务器.我正在实现这种情况:客户端(它不会是浏览器)发送请求,服务器在后台执行一些长任务,并在完成时将响应异步发送回客户端.有可能吗?
你问的问题无法通过HTTP协议完成.每个请求都会同步收到响应.最接近你想要的是这个:
客户端发送请求,服务器立即响应作业ID,同时也为此长计算启动后台任务.
然后,客户端可以通过在新请求中发送作业ID来轮询服务器的状态.响应再次立即生成并包含作业状态,例如"正在进行","已完成","失败"等.服务器还可以返回进度百分比,客户端可以使用该进度百分比来呈现进度条.
您还可以实现Web套接字,但这需要启用套接字的服务器和客户端.