所以,我一直在尝试使用jQuery库和PHP进行长轮询。我这样做是为了将来可以创建某种实时通知系统。但是,我现在的代码并没有真正起作用。
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));
}
?>
if(rand(1, 100) % 2)
返回 true,我希望请求保持打开状态,等待下一次尝试返回 true。 - JoshwaasetTimeout("getData()", 1000); }
- genesis