NET::ERR_INSUFFICIENT_RESOURCES AJAX 时钟上的错误

net::ERR_INSUFFICIENT_RESOURCES error on ajax clock

提问人:in2d 提问时间:2/3/2021 更新时间:1/23/2023 访问量:1698

问:

我设置了一个ajax php时钟,由于某种原因,它在我的控制台中给了我数千个net::ERR_INSUFFICIENT_RESOURCES错误。

这背后的原因是什么?

调用时钟函数的代码

$(document).ready(function(){  
    setInterval(function(){   
        $(".clock").load('<?php echo get_template_directory_uri(); ?>/melbourne.php');;
    });
}(), 1000);

墨尔本.php

<?php  

date_default_timezone_set('Australia/Melbourne');

echo $date = date('H:i:s');

?>
PHP Ajax WordPress 控制台 .log

评论

1赞 John Doe 2/3/2021
这回答了你的问题吗?无法在 Chrome 下加载资源!目前不工作 ajax
0赞 in2d 2/3/2021
是的,也不是。我现在可以理解为什么会发生这种情况,但我无法理解这个问题的解决方法。

答:

2赞 Louys Patrice Bessette 2/4/2021 #1

你放错了延迟。您将其提供给 ...这可能是丢弃它。因此,间隔没有延迟,它正在不停地发送一些请求。setInterval$(document).ready()

看看下面的区别:

$(document).ready(function(){
  setInterval(function(){
    $(".clock").load('<?php echo get_template_directory_uri(); ?>/melbourne.php');;
  },1000);
});

此外,请注意函数表达式后面的括号。

这是 IIFE:阅读!<--

function something(){
  // .. some code
}()

事件处理程序需要函数表达式,因此它们可以在以后执行它。如果提供 IIFE,则事件处理程序将接收函数执行的结果...

0赞 Martin Maati 1/23/2023 #2

您每秒对 Melbourne.php 文件进行 AJAX 调用,从而建立连接并每秒终止它。这会占用大量资源,并且随着调用的增加,会根据您使用的浏览器满足请求阈值。

我建议您使用 websockets (https://socket.io/docs/v4/) 从墨尔本请求数据.php因为通信处于全双工模式并且只进行一次连接。