【问题标题】:Javascript Ajax stops working in Chrome after few iterations几次迭代后,Javascript Ajax 在 Chrome 中停止工作
【发布时间】:2013-08-20 15:42:24
【问题描述】:

我对一个嵌入式项目感到头疼:Microchip 以太网/wifi。我有一个通过 ajax 加载数据的网页。由于大小限制,我没有使用 jquery,只使用 Javascript AJAX。

问题: 在Firefox中似乎一切都很好。但是在 Chrome 中,它会启动,如果我刷新,AJAX 就会停止工作(有时,在反复刷新之后)。控制台中没有记录错误。

我在

上创建了一个精简的演示

pastebin.com/test4/ajaxTest.html。它仅使用微芯片演示中的mchp.js。该页面通过 AJAX 从另一个页面加载一个数字。这会重复 100 毫秒,如果我在 5 秒内无法获得任何结果(即约 50 次尝试),则会超时。

recreate this error,在Chrome中打开demo link,不断刷新。我有 5 秒的时间。我正在使用latest version of Chrome。感谢任何提示。谢谢。

注意:一旦中断,即使我不断刷新,它也不会起作用。但如果我关闭标签并打开一个新标签,它就可以工作。

【问题讨论】:

  • 自我造成的 ddos​​ 在 t-mius 5 分钟内启动
  • 我可以通过在 JS 控制台中运行以下命令来释放请求中的“块”:xmlHttp = new XMLHttpRequest();xmlHttp.open("POST", 'ajaxXML.php', true);xmlHttp.send(''); 在我这样做几秒钟后它又开始工作了。
  • WireShark 显示一段时间后,您的 AJAX 代码将获得 HTTP/1.1 304 Not Modified 而不是 HTTP/1.1 200 OK。我认为答案会被 Chrome 缓存。查看此问题的公认答案:stackoverflow.com/questions/7432361/…
  • 谢谢,@kol 我去看看。

标签: javascript ajax google-chrome


【解决方案1】:

感谢@kol,认为这是缓存问题。所以我在参数中用随机数修改了url。现在似乎可以工作了。

【讨论】:

  • @kol 我发布了一个答案 bcz 没有(认为你值得称赞)。如果您可以发表您的评论作为答案,肯定会将其标记为已接受。 :)
【解决方案2】:

WireShark 显示一段时间后,您的 AJAX 代码将获得 HTTP/1.1 304 Not Modified 而不是 HTTP/1.1 200 OK。我认为答案会被 Chrome 缓存。您可以将随机数参数附加到 URL 以防止缓存(请参阅here)。

【讨论】:

    【解决方案3】:
    function getXMLHTTP() { //function to return the xml http object
    var xmlhttp=false;  
    try{
    xmlhttp=new XMLHttpRequest();
    }
    catch(e){       
    try{            
    xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch(e){
    try{
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch(e1){
    xmlhttp=false;
    }
    }
    }
    
    return xmlhttp;
    }
    
    function getdef()
    {
    alert('str');
    if (str=="")
    {
    document.getElementById("def1").innerHTML="";
    return;
    }
    if (window.XMLHttpRequest)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-28
      • 1970-01-01
      • 2018-04-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多