我创建了一个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);
那么我在聊天代码中做错了什么?
编辑:好的,所以我实际上发现,当我连接到服务器时,它实际上记录了“已收到连接”,这意味着我可以连接到服务器,但我看到的是浏览器试图加载页面。我无法看到实际的服务器。
答案 0 :(得分:2)
您缺少此行,这会使服务器无响应。
client.end();