2014-06-17 81 views
0

幾個月前,我已經能夠成功運行此操作,但突然出現問題。這是一個白板應用程序,也可以看到here.我遇到的問題是,當我在node.js命令提示符下運行命令「node server.js」時,我什麼都沒有收到,甚至沒有發生錯誤。我已經嘗試過其他測試,如Hello World,它工作正常。我的server.js文件正在偵聽端口:4000。我認爲這可能是問題。如果你認爲它可能是別的,這是代碼。使用socket.io在Node.js上運行server.js文件時出現問題

(function() { 
    var io; 
    io = require('socket.io').listen(4000); 
    io.sockets.on('connection', function(socket) { 
    socket.on('drawClick', function(data) { 
     socket.broadcast.emit('draw', { 
     x: data.x, 
     y: data.y, 
     type: data.type 
     }); 
    }); 
    }); 
}).call(this); 

回答

0

這不是問題。這只是幾個星期前發佈的Socket.IO 1.0的一個特性。

Form the official documentation

之前1.0時,Socket.IO服務器將默認爲所有登錄到控制檯。這對於許多用戶來說很煩人(儘管對其他用戶非常有用),所以現在我們默認默認情況下是完全無聲的。

,看看什麼樣的信息是最好的辦法是使用*:
DEBUG=* node yourfile.js

或在瀏覽器中:
localStorage.debug='*';

+0

謝謝,我只是想知道我需要做什麼才能使文件行事相同。我試圖安裝socket.io調試,但我得到存儲庫失敗。你顯示的命令是Node.js命令提示符?這不適合我。 – user2977102

+0

由於解決了問題並剛恢復爲早期版本。 – user2977102

+0

你在Windows機器上運行節點嗎?如果是這樣,上面的代碼將不起作用。在這種情況下,您應該設置'DEBUG'系統可以勝任。我強烈建議使用Socket.IO 1.0,因爲它更可靠,然後0.9 – Curious

1

而要做到更好的過濾功能,您可以使用以下內容:

DEBUG=* // all 
DEBUG=socket.io:* // all in socket.io module 
DEBUG=socket.io:server // only server debugger 
相關問題