问题标签 [cometd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 传递给 cometd.subscribe() 的参数
希望这不是一个太具体/太小的问题,但我想知道是否有人知道 dojo cometd subscribe() 函数的可能参数是什么?
我见过的几个例子表明两个参数
但是我见过的一些实现包括参数列表的布尔值和可能的对象,并且通读代码表明该函数可以处理 4 个参数。我正在尝试查看代码并查看它们最终的最终结果,但是整理代码需要一段时间 - 我希望这里有人可能知道一些如此晦涩的东西。
在一个稍微连接的线程上 - 有谁知道使用 cometd 的文档是否比在cometdproject找到的可怜的票价更多?
java - 使用 Terracotta 对 COMET 进行聚类
我们正在尝试使用 JETTY 7.0 的暂停 servlet 3.0 API 实现来集群一个用 Java 编写的 COMET Web 应用程序。
有没有人有在暂停/恢复 servlet Web 应用程序中使用 Terracotta 的经验。
JETTY 的 Greg Wilkins 提到了 Terracotta 的 COMET 性能问题。
python - Python彗星服务器
我正在构建一个 Web 应用程序,该应用程序具有我想通过长轮询机制更新的实时提要(类似于 Facebook 的新闻提要)。我知道对于 Python,我的选择几乎是使用 Stackless(从他们的 Comet wsgi 示例构建)或 Cometd + Twisted。不幸的是,关于这些选项的文档很少,我在网上找不到关于 Python 上的彗星生产规模用户的良好信息。
有没有人在生产系统中成功地在 Python 上实现了彗星?你是怎么做的,我在哪里可以找到资源来实现我自己的?
javascript - 如何启动 ajax 推送网站(activemq 或 cometd 或其他)?
我想启动一个将使用 ajax 推送的应用程序,但是应该正确配置 Web 服务器,我不知道如何在服务器端组件上启动。
我想从dojo 的 cometd开始,然后阅读一些博客说activeMQ比较老,并且是 ajax push 的标志性载体,但也有另一个博客说很难设置并使其工作。
现在我在开始之前很困惑,请告诉我我的方式:) 配置 ajax 推送环境的最佳方式是什么?
思南。
callback - 如何为回调轮询配置 dojox.cometd?
到目前为止,我找到了一些关于如何配置 dojox.cometd 的示例,但没有一个示例配置了 connectionType。我目前对回调轮询而不是长轮询(据我所知,这是默认的)更感兴趣。
有人可以在这里帮助我吗?我必须承认 dojox 文档对我来说非常晦涩难懂,甚至源代码也有点混淆(至少对我来说,我不是 javascript-ninja 编码器)
servlets - comet 回调轮询和 jetty-cometd 实现
我正在使用码头服务器附带的 Cometd 实现。我想使用回调轮询传输,但是当我尝试从 javascript 连接到彗星服务器时(注意 html 页面在另一个 web 服务器中),码头抱怨 servlet 不支持 GET 方法。这是码头实施的错误/错误/任何事情还是我遗漏了什么?
java - 在 Dojo cometd java 客户端中解码响应的正确方法
我想使用 Dojo cometd 通道来回推送任意 XMLEncoded java 对象,但我在正确解码有效负载时遇到了问题。
为了做到这一点,我在聊天室客户端演示程序的精简版中有这个发送方法:
现在它创建了一个扁平化为 UTF-8 编码字节流的 XML 片段(我知道我也需要处理编码,但这不是现在的问题)。
接受此消息的消息侦听器如下所示:
正如您所看到的,我通过反复试验发现,发送的字符串具有小于、大于和与号字符的保护,然后我取消保护并调用 XMLDecode。
输出是:
所以它是可逆的。我将这些字符放在被 XMLEncoded/XMLDecoded 的字符串对象中的实验并不好——它们没有受到双重保护——所以我的粗暴解码也影响了它们。
问题是:解码这些字符串的正确方法是什么?我需要使用 JSON 库来代替我快速而肮脏的代码吗?可能我在 Cometd 的 Java 客户端库中遇到了错误?
(注意:我在这个实验中一直使用 cometd-1.0.0rc0 库)。
编辑:事实证明,通信是通过同一网络服务器中的另一个部署发生的,而不是我认为负责 cometd 通信的部署,并且该部署包含进行 XML 保护的 filter.json。
http://groups.google.com/group/cometd-users/browse_thread/thread/6fbdaae669e5f9d3
换句话说,我的代码之外的配置问题。希望修改后的部署能够解决这个问题。
gwt - 如何将 GWT 连接到 CometD/Bayeux 事件?
我有一个 GWT 应用程序,当它们进入时,它需要定期用新的刻度项更新屏幕。我们还有由 CometD/Bayeux 服务器发布的消息(用于不同的 AJAX 应用程序),我想使用它们在我的 GWT 中。
当然,我可以进入 JavaScript,连接 Dojo,并在 JavaScript 层中接收回调——然后从那里通过 JSNI 将调用路由到 GWT Java 代码中——但 GWT 中似乎没有任何直接支持使用非 RESTful RPC 以外的长推或异步调用。
你们是如何整合 GWT 和 Bayeux 的?
grails - 如何调试 Cometd / Grails 1.2.1 问题?
当我将 Cometd 插件添加到 Grails 1.2.1 时,grail 的“jetty”调试环境将不再启动。
我一直无法调试这个,对底层组件不够熟悉。(一般来说,这是 Grails 开发的一个大问题。虽然它试图对你隐藏一切,但很快你就必须成为 Hibernate、Java 1.6、jetty 等方面的专家,才能调试 grails 问题)
要重现,请启动 grails 1.2.1 项目,并安装 cometd-grails 插件。当你做一个运行应用程序时,你会看到:
jquery - 带有 URL 和 404 错误的 Jquery 和 Cometd 问题
我正在为 cometd 服务器编写 jquery 客户端(我正在使用 jquery.cometd.js 插件),但我想不出为什么最简单的情况不起作用。
cometd 服务器位于 apache 后面(因此它在同一个域上运行),所有请求都从 uri http://wwwhost/cometd 转发。
问题是当我尝试连接(通过执行握手())到cometd时,它不是直接向/cometd发送请求,而是向/cometd/handshake发送404错误。我检查了我正在测试的其他应用程序,dojo 总是连接到 /cometd,然后发送消息“握手”。
任何人都知道为什么 jquery.cometd 会这样做?
这是我可以在 apache 日志中看到的:
您可以在下面找到我正在使用的代码(它或多或少是我从示例中得到的)。
和萤火虫调试:
编辑
看起来我的服务器实现不支持 Cometd 以外的 URI。Jquery 在末尾添加消息的类型,因此在发送握手时它会将其发送到:/cometd/handshake,通常看起来像 /cometd/message_type。
我在 cometd.js 代码中找到了发送消息的函数,该函数具有三个参数:
并调用此函数,例如:
这意味着我将永远以 /cometd/handshake 结束。我必须修复服务器或注释掉 cometd.js 中的附加 url。