长轮询 - 什么是确定的方法,当你有新的数据?
-
11-09-2019 - |
题
可以说我有,每次有人发送消息的聊天程序,globalfile被锁定并写入。接收客户端具有在等待使用该构建新更新的文件,以返回一个未决XMLHTTP请求:
while (!hasNewdata())
{ sleep 3; }
print "$thenewdata";
sub hasNewData()
{
# determine if global file has been appended to.
}
将发送文件的大小到客户端,然后再返回到服务器在接下来的轮询请求是这样做的一个很好的方法,因为我们现在可以检查文件的大小是由那些已经被发送回不同客户端,以便我们知道有新的数据。或将发送文件偏移来回是更好的方法,所以它知道文件在检查新的数据?或不同的方法完全不是使用一个全球性的“聊天”文件其他?什么
什么是确定的一般方法“新数据可用”
解决方案
您可以使用修改的日期。
$last_modified = filemtime("thisfile.php");
其他提示
的文件大小是没有这样的不良方式。
浏览器很可能已经标记“如果 - 修改 - 自”报头的请求。
不隶属于 StackOverflow