socket.io 中的套接字变量有多安全?

How secure are socket variables in socket.io?

例如,如果我们要在 socket.on 函数上分配用户名。

io.sockets.on('connection', function (socket) {
    socket.on('login', function (data) {
        socket.username = data.username;
    });
});

将用户名保留为套接字变量有多安全?它只是服务器端吗?

您代码中的套接字对象是一个 server-side 对象,分配给它的自定义 属性 仅可用 server-side。这样的属性不发给客户端

像这样的自定义 属性 与 node.js server-side 代码中任何 Javascript 对象上的 属性 一样安全。它没有自动连接到客户端中的任何内容。您代码中的 socket 对象只是一个普通的 server-side Javascript 对象。