0

我创建了一个 node.js 聊天站点,代码如下:

var net = require("net");

var chatServer = net.createServer(),
clients = [];

chatServer.on('connection', function(client) {
   client.write('Welcome');
   console.log("Connection is received!");

   clients.push(client);

   client.on('data', function (data) {
       for(var i = 0; i < clients.length; i++) {
           clients[i].write(data + "\n");
       }
   });

   client.on('end', function() {
      client.end();
   });
});

chatServer.listen(8888);

但是当我尝试连接到 localhost:8888 时,它只会保持负载直到服务器关闭。

我发现以下代码可以完美运行:

var net = require("net");

var chatServer = net.createServer();

chatServer.on('connection', function(client) {
    client.write('Hi!');

    client.end();
});

chatServer.listen(8888);


那么我在聊天代码中做错了什么?

编辑:好的,所以我实际上发现,当我连接到服务器时,它实际上会记录“收到连接”,这意味着我可以连接到服务器,但我看到的是浏览器试图加载页面。而且我看不到实际的服务器。

4

1 回答 1

2

您缺少此行,这将使服务器无响应。

client.end();
于 2013-02-11T18:09:21.283 回答