python - 给定时间后 Flask 客户端-服务器连接超时
问题描述
我有一个烧瓶应用程序。如果服务器在规定的时间内(比如 20 秒)没有响应,我希望客户端-服务器连接终止。我在这里读到session.permanent = True
可以设置。我有点不清楚这在服务器端代码中的位置(如果这就是这种方式??)。
为简单起见,我将包含我拥有的最少的服务器端代码。实际上,服务器正在执行文件读/写操作并将结果返回给客户端。
from flask import Flask, session, app
from flask_restful import Api, Resource
from datetime import timedelta
app = Flask(__name__)
api = Api(app)
class GetParams(Resource):
def get(self):
print ("Hello.")
return 'OK'
api.add_resource(GetParams, '/data')
if __name__ == '__main__':
app.run(host='127.0.0.1', port=5002)
谁能告诉我我应该在这里做什么,以便在服务器没有响应时终止我的客户端和服务器之间的连接,即在 20 秒内将数据发送回客户端?
解决方案
长时间运行的任务应该在不同的设计中处理,因为如果您允许您的服务器将请求保持 50 分钟,您不能强制用户浏览器这样做。
我建议将长时间运行的任务实现为一个线程,一旦完成就会通知用户。
有关问题陈述和建议解决方案的更多阅读:
推荐阅读
- reactjs - 如何在反应中从选择输入中获取所选值
- excel - EXCEL VBA 从 word doc 中获取材料
- c++ - 使用 tuple_cat 将参数包扩展为元组
- php - 如何将存储在变量中的日期与 SQL 中数据库中的日期进行比较?
- python - 如何在 Odoo 13 中以编程方式获取记录令牌
- kivy - 满足条件时如何更改 kivy 屏幕内容?
- xamarin.forms - Xamarin Forms CarouselView 和 ScrollView 已滚动而未访问
- javascript - 从不同的函数访问变量
- kotlin - 如何在 VSCode 中使用 Kotlin 自动导入
- javascript - 对象内部函数内部的Javascript OOP函数