nat_pagle 2022-02-25 15:53 采纳率: 66.7%
浏览 82
已结题

flask中利用ajax定时刷新同步后端结果

点击html页面的按钮后,可以开始不用刷新页面同步显示后端的结果。如同步下面count.py的结果count

import json, time, random

from threading import Thread
count=0

def foo():
    global count
    while True:
        time.sleep(1)
        count += 1
        print(count)
t1 = Thread(target=foo)  
t1.start()  

可以完成同步上面程序的测试就采纳

  • 写回答

2条回答 默认 最新

  • CSDN专家-showbo 2022-02-25 16:22
    关注

    大概如下

    img

    app.py

    import json, time, random
     
    from threading import Thread
    from flask import *
    count=0
    def foo():
        global count
        while True:
            time.sleep(1)
            count += 1
            print(count)
    t1 = Thread(target=foo)  
    t1.start()  
     
    
    app = Flask(__name__)
    @app.route('/',methods=['GET','POST'])
    def index():
        return render_template('index.html')
    
    @app.route('/getcount',methods=['GET','POST'])
    def getcount():
        return str(count)
    
    
    app.run()
    
     
    
    

    templates\index.html

    <meta charset="utf-8" />
    <script src="https://g.csdnimg.cn/??lib/jquery/1.12.4/jquery.min.js"></script>
    <input type="button"value="加载服务器数据" onclick="callserver(this)" />
    <div id="dv"></div>
    <script>
        var timer
        function callserver(el) {
            var load = el.value == '加载服务器数据';
            el.value = load ? '停止加载' : '加载服务器数据'
            if (load) timer = setInterval(() => {
                $('#dv').load('/getcount')
            }, 2000);
            else clearInterval(timer)
        }
    </script>
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月5日
  • 已采纳回答 2月25日
  • 创建了问题 2月25日

悬赏问题

  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考