如何使用AJAX实现页面实时更新?

2 投票
3 回答
632 浏览
提问于 2025-04-16 09:55

我正在使用谷歌的应用引擎、Python和JQuery。我的应用程序类似于Twitter,允许用户发布消息或状态更新。我希望首页能够显示实时更新(就像Twitter的首页一样),这样如果有新消息发布,它会出现在我首页的最上面。

我在寻找一个设计模式来开始这个项目。

3 个回答

0

有很多不同的方法可以实现这个功能,通常被称为“Comet”或者“反向Ajax”。我不太清楚你具体使用的技术,但这些信息应该能帮你找到正确的方向。

http://en.wikipedia.org/wiki/Comet_%28programming%29

1

在谷歌的应用引擎上,你可能想用新的频道API。这个API让你可以在服务器上声明一个频道,代码看起来像这样:

token = channel.create_channel('my_key')

... 然后在客户端,你可以用类似这样的代码 ...

  <script>
    channel = new goog.appengine.Channel('{{ token }}');
    socket = channel.open();
    socket.onmessage = onMessage;
  </script>

谷歌的网站上有很多示例可以参考。

4

你有没有看到GAE上新的通道API?它基本上可以让你不用再频繁地去询问服务器,而是可以实现双向推送数据。哦,我还链接了一个代码示例(用Python和JS写的)。

希望这对你有帮助!

撰写回答