2013-08-27 33 views
0

我把socketio内ZMQ但其不低于工作是不知道我在做什么内部io.socket.on错误socket.io不ZMQ函数内部工作

var io = require('socket.io').listen(2939); 
var zmq = require('zmq'); 
var socket = zmq.socket('sub'); 

console.log("Connecting to Currency Stream...."); 

socket.subscribe(""); 

    socket.on('message', function (data){ 
    //console.log(data.toString()); 
    io.sockets.on('connection', function(socket){ 
     console.log("In socket.io"); 
     console.log(data.toString()); 
     socket.emit("live_rates", 
       {date: data[0], time: data[1], 
        open: data[2], high: data[3], 
         low: data[4], close: data[5]}); 
     socket.emit("news", {hello: 'world'}); 
     console.log("emitted"); 
    }); 
}); 

    socket.connect('tcp://localhost:3191'); 

代码不运行代码 ,握手成功,因为我可以在日志窗口中看到。当我将代码放入zmq(取消注释//console.log(data.toString());) 它显示数据。

我在这里真正做的是从zmq服务器获取zmq tcp端口3191上的数据,并将其转发到socket.io http端口2939,然后通过使用html页面连接到端口2939来获取浏览器上的数据。我不希望在客户端使用zmq,因为socket.io对于该游戏非常强大。

也是一个单独的socket.io连接,即io.sockets.on正在工作,但在一个zmq套接字中失败!

任何一个

紫衫

回答