javascript - 如何使用 ajax 将数据从 Flask 获取到我的模板?

标签 javascript python jquery ajax flask

我在 Flask 中有一些数据,需要在模板中获取和使用,但获取应该使用 ajax 异步完成,每 15 毫秒一次。

我发现的大多数解决方案都是相反的,比如通过ajax从模板到flask,但我需要相反的方法。

@application.route('/test', methods=['GET','POST'])
def test():
  data = (some data i want to fetch every 15ms on test.html)
  return render_template('test.html', data=data)

最佳答案

异步(或 Ajax)请求类似于使用模板的路由和 View 功能,唯一的区别是它不返回 HTML 或重定向,而是仅返回格式为 XML 或更常见的 JSON 的数据。下面您可以看到以 JSON 格式返回用户信息的示例:

在服务器上:

from flask import jsonify

@app.route('/ajax_example/<int:id>', methods=['GET'])
@login_required
def get_user(id):
    user = User.query.get_or_404(id)
    return jsonify(user)

在客户端:

<script>
    $(function() {
        setInterval(function() {
            $.ajax('{{ url_for('main.get_user') }}).done(
                function(get_user_info) {
                    *blahblahblah*
                    }
            );
        }, 10000);
    });
</script>

关于javascript - 如何使用 ajax 将数据从 Flask 获取到我的模板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57217407/

相关文章:

python - pygame 绘图函数会留下像素宽的间隙。为什么?

javascript - TypeError : google. 可视化未定义

javascript - Map-Reduce 查询以计数标签

javascript - Chrome 浏览器无法启动错误 : connect ECONNREFUSED 127. 0.0.1:4444

javascript - 如何检查页面是否已被访问?

python - 具有 2 个元素的列表的线性排序

javascript - 将多个组件加载到 js 文件,但仅使用所需的组件

Python - Pandas 将所有其他列的列和统计度量分组为新列

javascript - 为什么 jQuery 将其原型(prototype)别名为 `fn` ?

javascript - 通过冒泡处理许多元素的点击事件