0

注意到一个奇怪的特征node.js

例如:

假设,我在node.jsserver:上有一些变量var user_id = '1';,其中存储了连接到服务器的用户 ID。

user1var user = 1;

user2var user = 2;

...

user99var user = 99;

但是,如果在某个时候我会要求服务器变量user- 我将返回最后一个重写她的用户的 id。

那正确吗?所以应该是?我想,node.js为每个用户创建一个flow/process...

感谢您的回答!

index.js

dNode({
    connect: function(data, callback) {
        IM.iUserId = data.user_id;
        IM.start();
    }
});

im.js

var IM = {
    iUserId: false,
    start: function() {
        console.log(this.iUserId);
    }
};
4

2 回答 2

3

似乎您有一个所有连接都共享的全局IM对象。


socket.set您可以使用and设置/获取每个套接字的值socket.get

于 2013-07-26T14:05:52.380 回答
1

Node.js 是单线程一上下文,它不会像 PHP 那样为用户创建任何孤立的上下文。

里面的所有东西都是共享的并且可以交叉访问。

于 2013-07-26T14:07:04.757 回答