2011-04-12 82 views
0

我在Node.js中嘗試複製周圍浮動的簡單聊天服務器。Node.js拋出e錯誤

這是我的JavaScript源文件:

var net = require('net'); 
var carrier = require('carrier'); 

var connections = []; 

var server = net.createServer(function(conn) { 
    connections.push(conn); 

    conn.on('close', function() { 
     var pos = connections.indexOf(conn); 
     if (pos >= 0) { 
      connections.splice(pos, 1); 
     } 
    }); 

    conn.write("Hello, welcome to this chat server!\n"); 
    conn.write("Please input your user name:\n"); 

    var username; 

    carrier.carry(conn, function(line) { 
     if(!username) { 
      username = line; 
      conn.write("Hello " + username + "!\n"); 
      return; 
     } 

     if(line == 'quit') { 
      conn.end(); 
      return; 
     } 

     connections.forEach(function(one_connection) { 
      one_connection.write(line); 
     }); 
}); 

server.listen(8000); 

據我可以告訴,一切都在這裏是正確的。

現在,當我試圖通過Node.js的運行它,我得到如下:

script.js:39 
}); 

node.js:134 
    throw e; 

有一些東西后面,但我不明白的是Node.js的參考線39 ,甚至不存在。這是一個38行腳本與最後一行是:

server.listen(8000); 

所以,我做錯了什麼?

對不起,如果這真的很簡單,我對此很新,而且有點令人望而生畏。

謝謝!

回答

1

您錯過了底部的一組});。這是抱怨。

從您的壓痕,從carrier.carry(conn, function(line) {

是我強烈建議得到(在Windows例如TextMate的Mac或EditPlus中上)的編輯器,可以指出匹配的括號/括號

+0

嘿感謝!我應該很高興這是一個愚蠢的錯誤?的xD – Qcom 2011-04-12 02:14:55