【问题标题】:Socket.io-client simple client/server test wont connect - Node.jsSocket.io-client 简单的客户端/服务器测试不会连接 - Node.js
【发布时间】:2014-10-17 21:41:54
【问题描述】:

我正在尝试使用 socket.io 和 socket.io-client 在 Node.js 中进行一些简单的通信。

我有两个脚本,server.js 和 client.js。

server.js 脚本可以绑定到面向 web 的端口,并像普通的 server/socket.io 主机一样,在与浏览器客户端一起使用时都可以工作,

但是 client.js(在另一个节点脚本中运行)不起作用,它只是等待不输出任何东西。我希望 client.js 中的 socket.io-client 连接到 server.js 中的 socket.io 实例,并且两者都在他们的控制台中显示一条消息,表明它们已连接。

server.js 代码:

var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

app.get('/', function(req, res){
    console.log("\nNew server request: "+req.url+"\n");

    // sends a html file with a script that connects
    // to socket.io running in server.js
    res.sendFile(__dirname+'/webroot/index.html');
});

// listens for connections
io.on('connect', function(socket){
  console.log('a client connected');
});

// start listening on server
http.listen(9000, function(){
  console.log('listening: 9000');
});

client.js 代码:

var io = require('socket.io-client');

// connect to server.js socket
var socket = io('http://hostsite.com', {
    port: 9000
});

socket.on('connect', function(){
    console.log("connected\n");
});

使用 npm 安装

npm install socket.io // version: 1.0.6
npm install socket.io-client // version: 1.0.6
npm install express // version: 4.8.5

理想情况下,我不想使用 express 或 http 服务器,只是两个 Node.js 脚本之间的套接字通信,一个在服务器机器上,一个在客户端机器上。

感谢您的帮助:)

【问题讨论】:

    标签: javascript node.js sockets socket.io


    【解决方案1】:

    你试过了吗:

    var socket = io.connect('http://hostsite.com:9000');
    

    【讨论】:

      【解决方案2】:

      由于某种原因,我使用时无法连接:

      npm install socket.io-client
      
      and
      
      require('socket.io-client');
      

      但如果我使用主包附带的客户端,它确实可以连接

      npm install socket.io
      
      and
      
      require('socket.io/node_modules/socket.io-client');
      

      花了一些时间才弄清楚,但希望现在其他人会花更少的时间;如果他们面临同样的问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-11-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-07
        • 2018-04-11
        • 2020-06-20
        • 2022-01-20
        相关资源
        最近更新 更多