【发布时间】:2010-10-15 08:45:56
【问题描述】:
我希望通过使用 ajax 和 jquery 将彗星长轮询功能添加到我的网站,因为我不熟悉 javascript 原型框架。然而,当我搜索这个时,我似乎总是以使用原型框架的教程结束。有谁知道基于 jquery 和 ajax 的彗星长轮询的综合教程?
【问题讨论】:
标签: javascript jquery ajax
我希望通过使用 ajax 和 jquery 将彗星长轮询功能添加到我的网站,因为我不熟悉 javascript 原型框架。然而,当我搜索这个时,我似乎总是以使用原型框架的教程结束。有谁知道基于 jquery 和 ajax 的彗星长轮询的综合教程?
【问题讨论】:
标签: javascript jquery ajax
这是一个使用 jQuery 的 Comet 教程 http://screenr.com/SNH
Code 在本教程中使用
【讨论】:
Cometd 绑定了 jQuery 和 Dojo JavaScript 库。我不知道它有多全面,但这里有文档:http://cometd.org/documentation/cometd-javascript
【讨论】:
Comet 和长轮询意味着在客户端编写部分代码,在服务器端编写部分代码。您需要在服务器 CometD 或 Ape 中才能连接到 Comet 服务器,我发现安装它们通常很麻烦。
我发现更简单的方法是让 Node.js 带有“comet”模块。 Faye(也可用于 ruby)是一个长杆 pub 子服务器,对于聊天非常有用,而 Socket Io 是一种将页面不断更新到套接字(具有 Flash 回退的 websockets)的好方法。
Faye网站:http://faye.jcoglan.com/ Socket Io:http://socket.io/
【讨论】:
我在这里有一个非常简单的示例,可以帮助您开始使用 comet。它涵盖了使用 NHPM 模块编译 Nginx,并包含 jQuery、PHP 和 Bash 中简单发布者/订阅者角色的代码。
http://blog.jamieisaacs.com/2010/08/27/comet-with-nginx-and-jquery/
可以在此处找到一个工作示例(简单聊天):
http://cheetah.jamieisaacs.com/
【讨论】:
你可以通过这个强制使用长轮询
var cometd = $.cometd;
cometd.websocketEnabled = false;
希望对你有帮助
【讨论】: