根据网站上的选择,将在运行Flask的服务器上生成图。
我遇到的问题是产生例如10个不同的地块可能需要30秒钟。我想实现的目标是在第一个地块准备好后立即开始更新网站,然后在其他地块准备好后自动加载。
当前,只要用户点击网站上的“处理”按钮,就会执行以下AJAX功能:
$.ajax({
type: "POST",
url: "/single",
data: { athleteName1: $('#athleteName1').val(), style: $('#style').val()},
success: function (results) {
$('#results').empty().append(results);
$('#results').show();
$('#submitbutton').prop('disabled', false);
},
error: function (error) {
console.log(error);
}
});
在服务器站点上,将创建图并将其嵌入div容器中。随后将它们串联起来,并立即以“ diagStr”的形式返回到网站:
@app.route('/single', methods=['POST', 'GET'])
def single():
loop 10 times:
diagStr += generate_plot()
return Markup(diagStr)
使用“流内容”进行操作只是解决方案的一部分,因为AJAX等待直到收到整个响应。
任何想法都可以通过当今的技术解决吗?
答案 0 :(得分:0)
您可以通过多种方式来实现此目标,但是有一些简单的示例: