我正在研究Flask Web应用程序,其中某个功能正在对List执行某项任务。现在,在遍历列表并对列表中的每个元素进行一些操作之后,将呈现一个新页面。但是对每个元素执行的操作需要一些时间。因此,我希望在调用该函数的位置显示在同一网页上的输出,而该函数作为哪个元素操作已完成而运行。完成后,仅加载新页面。请给我一些想法,我该怎么做。
答案 0 :(得分:0)
典型的方法是拥有这两个API
202(Accepted)
。响应包含一个URL,您可以单击该URL来获取应用程序的状态请注意,状态可以是任何类型,从抽象的“进行中”到具体的“ 92%完成”。在内部,第二个API可以获取列表上操作的进度
参考 https://restfulapi.net/http-status-202-accepted/
引用以上链接中的相关位
如果您向REST API提交了长时间运行的异步作业,则 API可以返回如下结果:
HTTP STATUS 202(已接受)
{
"task": {
"href": "/api/company/job-management/jobs/2130040",
"id": "2130040"
}
}
现在用户代理可以将HTTP GET请求发送到URI / api / company / job-management / jobs / 2130040定期完成 工作状态。以上API的响应将通知当前 计划的实际运行状态。