asp 当浏览器最小化时,mvc 每 30 秒重新加载一次页面
asp mvc reload page every 30 seconds when browser is minimized
实际上,当数据库中发生某些更新时,我们会播放通知声音,所以我试图在浏览器最小化时每 30 秒重新加载一次 ActionMethod
,这在 Firefox 中工作正常,但在 Chrome 这不行。
场景:
最小化浏览器并让计算机闲置。
我试过两种方法:
方法一:
<meta http-equiv="refresh" content="30;URL=http://example.com/" />
方法二:
<script>
$(document).ready(function () {
setTimeout(function(){
window.location.reload(1);
}, 30000);
});
</script>
阅读 this post 后,似乎当 Chrome 最小化时它会将 Javascript setInterval
和 setTimeout
设置为空闲状态,因为浏览器性能改进会影响 Javascript 间隔的执行。
那么我可以使用 FluentScheduler、Quartz.NET 或 Hangfire 等计划任务每 30 秒重新加载一次 ActionMethod
吗?
任何帮助都会很棒。
SignalR 在这里是绝配。为什么您希望您的客户端每 30 秒向服务器发送一次请求?这可能会影响您的性能并增加您的服务器负载。
相反,我会建议使用 SignalR,并在有任何更新时向客户端推送通知。
实际上,当数据库中发生某些更新时,我们会播放通知声音,所以我试图在浏览器最小化时每 30 秒重新加载一次 ActionMethod
,这在 Firefox 中工作正常,但在 Chrome 这不行。
场景:
最小化浏览器并让计算机闲置。
我试过两种方法:
方法一:
<meta http-equiv="refresh" content="30;URL=http://example.com/" />
方法二:
<script>
$(document).ready(function () {
setTimeout(function(){
window.location.reload(1);
}, 30000);
});
</script>
阅读 this post 后,似乎当 Chrome 最小化时它会将 Javascript setInterval
和 setTimeout
设置为空闲状态,因为浏览器性能改进会影响 Javascript 间隔的执行。
那么我可以使用 FluentScheduler、Quartz.NET 或 Hangfire 等计划任务每 30 秒重新加载一次 ActionMethod
吗?
任何帮助都会很棒。
SignalR 在这里是绝配。为什么您希望您的客户端每 30 秒向服务器发送一次请求?这可能会影响您的性能并增加您的服务器负载。
相反,我会建议使用 SignalR,并在有任何更新时向客户端推送通知。