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 用matlab写代码
  • ¥30 motoradmin系统的多对多配置
  • ¥15 求组态王串口自定义通信配置方法或代码?
  • ¥15 实验 :UML2.0 结构建模
  • ¥20 用vivado写数字逻辑实验报告撰写,FPGA实验
  • ¥15 为什么shp文件会有这种小方块?
  • ¥15 ecplise在连接数据库时显示加载驱动成功但是数据库连接失败
  • ¥15 visionmaster启动失败,提示为“机器不满足授权而被禁用”
  • ¥15 IDEA中圈复杂度如何具体设置
  • ¥50 labview采集不了数据