我在 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/