0

我已经花了很多时间,但找不到任何好的 commet 示例。我和我的朋友正在用PHP开发一个小型聊天软件,我急需commet的东西,如果有人能用简单的话解释一下。我会很感激。谢谢

4

2 回答 2

1

有几种方法可以实现:

  • 重复轮询
  • 服务器推送
  • 长轮询

如果repeated polling您的客户端在一定间隔后不断轮询服务器以检查是否有新消息。

如果server push您的客户端通过套接字或类似的方式维护并主动连接到服务器,然后服务器通过推送通知客户端

如果long polling客户端发出请求,服务器不会立即响应,而是等待直到有消息要发送。因此,要么在一段时间后客户端收到消息,要么客户端超时并开始一个新请求。

于 2012-11-21T04:53:06.073 回答
0

Commet 只是长轮询的另一种方式。本质上,您使用 jquery 之类的东西来调用服务器。服务器保持该调用打开,直到它:

  • 有数据要返回或
  • 指定的时间已经过去

当服务器返回时,您的 jquery 对可能已返回的任何数据执行某些操作,然后启动对服务器的另一个调用。

javascript函数的一个例子如下:

function commetpoll() {
    $.get("/myserversidescript.php", {}, function(data) {
        //Do something with data
        commetpoll();
    }));
};
于 2012-11-21T04:56:11.337 回答