Javascript Socket.io无法访问事件处理程序中的握手查询参数
如何从socket.on事件处理程序中访问初始握手查询参数,portfolioID显示在io.on(“连接”)中,但在socket.on(“更新”)中,它是未定义的Javascript Socket.io无法访问事件处理程序中的握手查询参数,javascript,node.js,socket.io,Javascript,Node.js,Socket.io,如何从socket.on事件处理程序中访问初始握手查询参数,portfolioID显示在io.on(“连接”)中,但在socket.on(“更新”)中,它是未定义的 io.on("connection", socket => { const { portfolioID } = socket.handshake.query; console.log(portfolioID); // Shows ID socket.on("UPDATES",() => { cons
io.on("connection", socket => {
const { portfolioID } = socket.handshake.query;
console.log(portfolioID); // Shows ID
socket.on("UPDATES",() => {
console.log(portfolioID); // Undefined ID
...
});
...
}
第一个控制台日志可以工作,第二个控制台日志返回未定义。我不完全确定,但我认为,因为第二个portfolioId位于匿名函数中,所以函数没有捕获它,或者换句话说,函数不知道这样一个变量的存在
io.on("connection", socket => {
const { portfolioID } = socket.handshake.query;
console.log(portfolioID); // Shows ID
socket.on("UPDATES",() => {
console.log(portfolioID); // Undefined ID
...
});
...
}