【问题标题】:Socket.io unable to access handshake query params inside event handlersSocket.io 无法访问事件处理程序中的握手查询参数
【发布时间】:2019-11-09 20:03:23
【问题描述】:

如何从 socket.on 事件处理程序中访问初始握手查询参数,portfolioID 显示在 io.on("connection")... 中,但在 socket.on("UPDATES")... 中,它是未定义的。

io.on("connection", socket => {
  const { portfolioID } = socket.handshake.query;
  console.log(portfolioID); // Shows ID

  socket.on("UPDATES",() => {
    console.log(portfolioID); // Undefined ID
    ...
  });

  ...
}

第一个控制台日志有效,第二个返回 undefined。

【问题讨论】:

    标签: javascript node.js socket.io


    【解决方案1】:

    我不完全确定,但我认为因为第二个portfolioId在一个匿名函数内部,所以该函数没有捕获它,或者换句话说,该函数不知道这样一个变量的存在。

    【讨论】:

      猜你喜欢
      • 2018-07-15
      • 1970-01-01
      • 2017-10-04
      • 2015-02-12
      • 2019-04-26
      • 1970-01-01
      • 2023-04-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多