簡體   English   中英

node.js的一個奇怪功能

[英]A strange feature of node.js

注意到node.js一個奇怪功能。

例如:

假設,我在node.js服務器上有一些變量: 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);
    }
};

似乎您的所有連接都共享一個全局IM對象。


您可以使用socket.setsocket.get為每個套接字設置/獲取一個值

Node.js是單線程一個上下文,它不會像PHP中那樣為用戶創建任何隔離的上下文。

內部的所有內容都是共享的並且可以交叉訪問。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM