douxiuyu2028 2011-03-04 18:12
浏览 51
已采纳

Ajax jQuery在10秒后成功返回,但不应该

I've got a jQuery ajax call which goes of to the server backend.php script and told to sleep for 13 seconds (or more) before responding with a simple test message. What I'm seeing is the ajax success function triggering (with a 200 response observed in firebug) after 10 seconds with no actual response from the server. If I set the response delay to less than 10 seconds I get the response message perfectly.

Is this something you've seen before? Is there some default php timeout thing going on?

    ajaxcall = $.ajax({
    type: "GET",
    url: "backend.php",
    async: true,
    cache: false,
    dataType: 'json',
    timeout: 30000,
    /* Timeout in ms. Default to 30000 (30 seconds) */
    data: "TimeStamp=" + TimeStamp,
    success: function(data) {

        if (data !== null) {
            $('#TextHistory').append(data.message);

            if (data.timestamp != 0)
            {
              TimeStamp = data.timestamp;
            }
        }
        setTimeout(
        waitForMsg, /* Request next message */
        5000 /* ..after 5 seconds, default to 5000*/ );
    },
    error: function(XMLHttpRequest, textStatus, errorThrown) {

        $('#TextHistory').append('<p>Error:' + errorThrown + '</p>');

        setTimeout('waitForMsg()',"15000"); /* milliseconds (15seconds) default to 15000 */
    }
});

}

..and on the server side i'm simply doing this:

<?php

header('Content-Type: application/json');

sleep(13);   // Changing this to test it. Will only work if less than 10

   $When = date("H:i:s",strtotime("now"));

   $response["message"] = "<p>Small Test $When</p>";

    $response["timestamp"] = 123456789;

   echo json_encode($response);

?>
  • 写回答

1条回答 默认 最新

  • duanheyi7147 2011-03-04 18:16
    关注

    Definitely its timing out after 10 seconds

    Place a call to phpinfo() on a blank page and see what the timouts are set to

    Look at max_execution_time for one

    It'll just need to be overriden in a php.ini file or in the PHP directly

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同