Rails WebSocket Client永远不会触发OnOpen

时间:2014-03-25 00:55:19

标签: ruby-on-rails websocket

我正在使用Faye WebSockets 作为我的rails应用程序,并尝试连接到http://www.websocket.org/echo.html处预先存在的websocket服务器。

然而,我的websocket的OnOpen事件从未被触发,并且根本没有任何错误或状态。这是rails代码的样子:

def make_websocket
    if @@ws
        return
    end
    p "Making the websocket"
    ws = Faye::WebSocket::Client.new('ws://echo.websocket.org/') 

    ws.on :open do |event|
        p "connection has been opened"
        @@ws = ws
        self.clear_queue
    end

    ws.on :message do |event|
        p [:message, event.data]
    end

    ws.on :error do |event|
        p "WebSockets error"
        p [:error, event.data]
    end

    ws.on :close do |event|
        p [:close, event.code, event.reason]
        @@ws = nil
    end
end

然而,在日志文件中唯一可以找到的是“制作websocket”。有没有明显的东西我缺少,或者有没有人有一个不同的宝石,我可以用作铁路服务器的客户端? TIA。

1 个答案:

答案 0 :(得分:2)

代码需要包含在EM.run