nodejs中的socket.io客户端

socket.io client side in node js

本文关键字:客户端 io socket 中的 nodejs      更新时间:2023-09-26

我做错了什么吗?当我运行node client.js时。我收到以下错误消息:

/web/ws/node_modules/socket.io/node_modules/engine.io/lib/server.js:358
  var listeners = server.listeners('request').slice(0);
                         ^
TypeError: Object http://localhost:8080 has no method 'listeners'
    at Server.attach (/web/ws/node_modules/socket.io/node_modules/engine.io/lib/server.js:358:26)
    at Function.attach (/web/ws/node_modules/socket.io/node_modules/engine.io/lib/engine.io.js:124:10)
    at Server.listen.Server.attach (/web/ws/node_modules/socket.io/lib/index.js:226:21)
    at new Server (/web/ws/node_modules/socket.io/lib/index.js:51:17)
    at Server (/web/ws/node_modules/socket.io/lib/index.js:39:41)
    at Object.<anonymous> (/web/ws/client.js:2:14)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)

这是我的代码:

var io = require('socket.io');
var socket = io('ws://localhost:8080');
  socket.on('connect', function () {
    socket.send('hi');
    socket.on('message', function (msg) {
      // my msg
    });
  });

请提出一些建议。我在哪里犯错?

这里的问题是您试图使用用于配置服务器的socket.io包。

相反,您需要使用socket.io-client包才能充当客户端。

您可以通过以下提供的链接找到用法示例。