2015-09-04 54 views
0

我一直在試圖弄清楚爲什麼我不能得到任何發射顯示在我的終端,似乎一切運行良好....除看到散發。這裏是我的代碼似乎無法得到插座io顯示任何發射

var express = require('express'); 
var path = require('path'); 

// Create a new Express application 
var app = express(); 

var views = path.join(process.cwd(), 'views'); 
app.use("/static", express.static("public")); 

// Create an http server with Node's HTTP module. 
// Pass it the Express application, and listen on port 3000. 
var server = require('http').createServer(app).listen(3000, function() { 
    console.log('listening on port ' + 3000) 
}); 

// Instantiate Socket.IO hand have it listen on the Express/HTTP server 
var io = require('socket.io')(server); 

var game = require('./game'); 

app.get('/', function(req,res) { 
    res.sendFile(path.join(views, 'index.html')); 
}); 

io.on('connect', function(socket) { 
    io.emit('connection', { message: "You are connected!" }); 
    game.initGame(io, socket); 
    socket.emit('connected', { message: "You are connected!" }); 
    io.sockets.emit('test', 'test') 
}); 

任何幫助將是偉大的!

回答

0

發光不會自動打印。 socket.emit會將消息發送回客戶端,而不是發送給終端。使用console.log("whatever")打印到終端:

io.on('connect', function(socket) { 
    console.log('Client connected'); 
    socket.on('test', function(data) { 
     console.log("Got message of type 'test'containing data:", data); 
    }); 
}); 
+0

我明白了。謝謝!我想我很困惑,因爲在一個演示遊戲中,我從github獲得socket io。用console.logs打印在終端中。但是,當我打開端口時,它也表示「info - socket io started」。我似乎無法在我的項目中做到這一點。也許它必須做些什麼。 –

+0

它們可能已經激活了Socket.IO的[調試功能](http://socket.io/docs/logging-and-debugging/)。 –