Faye阻止连接

时间:2012-06-12 20:44:35

标签: websocket faye rackup

我在铁路应用程序中使用Faye而且我遇到了一个问题 奇怪的行为,如果faye在所有资产被提供之前到达subscribe(即, 调用$(document).ready()后但浏览器中的微调器正在运行时 那么faye将以“加载”模式阻止浏览器(如同,旋转器永远不会停止)。

相信我正在使用websockets而不是长时间轮询,虽然我不确定如何成为 某些。我在faye的日志中看到,当启用引用websocket的调试消息时:

2012-06-12 20:16:56 [DEBUG] [Faye::RackAdapter] Received via WebSocket[hybi-13]: [{"channel":"/meta/connect","clientId":"7w5vwypdaudnp9o64qwsb13om","connectionType":"websocket","id":"6s"}]

浏览器连接到运行

的独立thin服务器
require 'faye'
require 'bundler/setup'

Bundler.require(:faye)

bayeux = Faye::RackAdapter.new(:mount => '/faye', :timeout => 25)
bayeux.listen(9292)

我正在使用的命令是

exec bundle exec rackup faye.ru -s thin -E production

我正在运行faye 0.8

* faye (0.8.2)
* faye-websocket (0.4.5)

This is what I see in chrome

5分钟后,我只是[Esc]并且出现了这些内容,faye.js是Faye所服务的脚本,似乎这些文件中的每一个似乎都对应于每个subscribe来电

有趣的是,在这5个文件之后,每隔一分钟就会有5个电话的块。

enter image description here

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:2)

这是一种占位符答案,以防其他人遇到类似的事情。

我发现我在两个不同的地方使用了一个Faye.Client,因此有两个连接正在设置给faye服务器,这是faye不支持的东西(因为它没有&#39 ; t需要)。删除其他faye客户端有帮助,我有时仍会看到奇怪的行为,但这确实改善了一点点。