2012-01-19 11 views
1

私はしばらくNode.jsで遊んでいました。Node.jsでイベントを待っています

私は私のサーバーでスクリプトの以下の部分があります。私のクライアントでは

socket.on('auth', function(uid, key) { 
    client.hgetall(uid, function (err, data) { 
     console.log(data); 
     if(key != data['key']) { 
      socket.disconnect(); 
     } 
     this.user = data; 
    }); 
}); 

socket.on('loginGame', function(gameId) { 
    checkAuth(); 
    console.log(user); 

    if(!games[gameId]) { 
     games[gameId] = {}; 
    } 

    games[gameId][uid] = uid; 
}); 

を。私はこのコードを実行すると、私は(Redisのを使用して)I/Oをやっているよう

socket.on('connect', function(){ 
    socket.emit('auth', 1, 1); 
    socket.emit('loginGame', 1);   
}); 

は、loginGame機能は、認証機能の前に終了します。私はこれをnode.jsの機能として知っていますが、私は何か不足していると思います。どの機能を実行する前にauth機能を終了する必要があるので、どのようにしてこの問題を解決できますか。 (私はシリアルで実行する必要がある複数の機能があります)

私はnode.jsモジュールを見つけました:https://github.com/creationix/step。しかし、これは唯一のオプションですか?これは、ほとんどのnode.js開発者が必要とするかもしれないものだと思います。私はJSでもそれほど良いものではない。

この問題を解決する最も優れた最も洗練された方法は何ですか?

おかげで、

答えて

3

サーバーは認証が成功したときに確認応答を返送し、そのメッセージのためのハンドラでloginGameを送ってもらいます。

+0

はい、感謝しました! – Merinn

関連する問題