2011-11-02 3 views
2

Redis, Socket.io를 사용하여 게임을 만들었습니다. diff 소켓 .io 클라이언트를 실행하는 2 개의 nodejs 서버가 있습니다. 나는 redis store를 통해 socket.io 클라이언트와 통신하고 있는데, 그렇게 할 때마다 언제든지 모든 소켓으로 내보낼 수 있습니다. 그리고 그것은 작동합니다.Socket.io, Redis Store 및 IE

io.sockets.emit('successful_connection', { success : true }); return; 

내 문제는 ID로 특정 소켓을 호출 할 때 실패한다는 것입니다.

io.sockets.socket(socketId).emit('successful_connection', { success : true }); return; 

다른 모든 브라우저에서 작동하는 이유는 알 수 없습니다. Heres는 socket.io/redis 저장 설정

io.configure(function(){ 
     var RedisStore = require('socket.io').RedisStore, 
      opts = {host: **.***.**.**, port: ****}; 
     io.set('store', new RedisStore({redisPub:opts, redisSub:opts, redisClient:opts})); 
    });  

의 코드가 어떤 조언이 도움이 될 것입니다, 지금 내 주요 생각은 "왜 nodejs/socket.io 서버가"입니다. 이 문제를 처리해야한다면 실제로 이점이 있습니까? 감사합니다

+0

"diff 소켓 .io 클라이언트를 실행하는 2 개의 노드 서버"에 대해 언급 했으므로 socket.io 서버에 연결하고 있습니까? 이 오류가 발생하면 "클라이언트"와 "서버"라는 단어를 혼용하지 마십시오. 그것들은 똑같은 것을 의미하지 않으며 계속 진행되는 것을 이해하는 것을 불가능하게 만듭니다. – geoffreak

답변

0

This 블로그 게시물 예제 코드는 당신을 도울 수 있습니다.