使用jQuery和PHP进行长轮询

时间:2011-08-05 11:30:26

标签: php jquery ajax long-polling

所以,我一直在尝试使用jQuery库和PHP进行Long-Polling。我这样做,所以我可以在未来制作某种实时通知系统。我现在的代码并没有真正起作用。

的index.php

<html>
<head>
    <title>Long Polling</title>
    <script type='text/javascript' src='http://code.jquery.com/jquery-1.6.2.min.js'></script>
    <script type='text/javascript'>
        $(document).ready(function() {
            getData();
        });

        function getData() {
            $.ajax({
                type: "POST",
                url: "ajax.php",
                async: true,
                timeout: 50000,
                data: "get=true",
                success: function(data) {
                    $("#info").append(data);

                    setTimeout("getData()", 1000);
                }
            });
        }
    </script>
</head>
<body>
    <div id='info'></div>
</body>
</html>

Ajax.php

<?php
    if(rand(1, 100) % 2) {
        echo 'even';
    } else {
        sleep(rand(1, 4));
    }   
?>

1 个答案:

答案 0 :(得分:0)

尝试将此用于ajax.php

<?php
    if(rand(1, 100) % 2) {
        echo 'even<br />';
    } else {
        sleep(rand(8, 12));
    }   
?>

watch this有时您需要等待12秒

如果你让他在一秒内完成它似乎被打破了,但它不是