【问题标题】:How to import socket.io on client side - SOCKET.IO + NODE.JS如何在客户端导入 socket.io - SOCKET.IO + NODE.JS
【发布时间】:2019-04-15 21:18:03
【问题描述】:

我一直在尝试创建一个在线游戏,但是当我尝试使用 socket.on(...);socket.emit(...) 时会出现类似 socket 的错误。我看过一些与此类似的帖子,并尝试了所有解决方案,但都没有奏效。我已经让io.connect(...); 工作并且它工作正常(我假设这意味着我已经正确设置了socket.io-client)。我只是不明白我做错了什么。如果您需要代码,您可以简单地请求它,但我认为没有必要。谢谢。

【问题讨论】:

    标签: javascript html node.js websocket socket.io


    【解决方案1】:

    要在客户端使用 SocketIO,首先要通过以下方式导入它

    import * as io from 'socket.io-client';
    

    然后,可能在构造函数中,建立到运行 SocketIO 服务器的服务器的 ip 和端口的连接

    const socket = io(`172.16.1.3:81`);
    

    同样在构造函数中,您可能希望设置一个函数,以便在服务器发送某种消息类型时调用:

    socket.on("update-player", handlePlayerUpdateFunction);
    

    function handlePlayerUpdateFunction(message) {
        console.log(`Received message from server: ${message}`);
    }
    

    如果此客户端没有收到您的服务器发送的消息,则说明您的服务器未正确设置以侦听端口。

    【讨论】:

    • 'socket'变量没有定义?如果是这样,那么您的服务器有问题并且它没有在端口上监听
    【解决方案2】:

    在尝试了一些事情并进行了一些研究之后,我找到了解决问题的方法。添加var socket = io.connect(x.x.x.x:3000); 我的代码开始运行,一切都很完美我已经通过安装指南上的CDNJS 链接导入了socket.io-client。我只需要初始化变量。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-22
      • 2016-05-31
      • 2020-04-07
      • 2020-10-14
      • 2011-11-12
      • 1970-01-01
      • 2013-03-06
      • 1970-01-01
      相关资源
      最近更新 更多