心跳上的Socket.io事件

时间:2013-08-19 15:59:26

标签: javascript express coffeescript websocket socket.io

Socket.IO使用心跳模式确保客户端仍然连接。 如果我能够在服务器上订阅听力事件,它将解决我的算法。

例如:      socket.on“heartbeat”, - >        mycode的

是否有可能这样做?

1 个答案:

答案 0 :(得分:1)

心跳频繁发生,你确定这是正确的吗?我使用“连接”事件,似乎它可能会做你需要的事情:

  connect: (url, options, connectCallback) =>
    someFunction = =>
      @doSomeRedisStuff() if @connected

    @logger.debug "starting connection to url: #{url}"
    @socket = @socket.connect(url, options)
    @logger.debug "connecting ..."
    @socket.on "connect", =>    
      @logger.info "connected (socket id #{(@socket.socket.sessionid)})"
      @connected = true 
      setTimeout someFunction, 2000
      connectCallback() if connectCallback?
     @socket.on "disconnect", =>
       @connected = false 

如果与服务器的连接中断(例如服务器重新启动),连接事件将在连接恢复时启动。 Socket.IO很聪明。