我有一个测试 Django 应用程序。
在一个页面中,测试向所有用户显示相同的问题。
我希望当用户回答正确时,向其他活跃用户的浏览器发送信号以刷新到下一个问题。
我一直在学习 django 中的信号,我正在学习如何使用它们,但我现在不知道如何将“刷新信号”发送到客户端浏览器。
我认为它可以使用 javascript 代码来检查某个值(实际问题)是否发生变化,如果发生变化则重新加载页面,但我不知道这种语言,而且我发现的信息很困惑。
谁能帮帮我?
非常感谢。
最佳答案
目前还没有从服务器向浏览器发送事件的方法。但是你可以让你的网页定期轮询你的服务器(比如每 5 秒)。
javascript/jquery 中的代码可能如下所示
setInterval(function(){
$.post("your_ajax_handler_url/is_answerd", userId, function(xhr){
if(xhr.responseText == "answered"){
location.reload(true);
}
}
}, 5000);
关于如果其他用户更改数据,Django 刷新页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8106230/