我正在處理一個socket.io + Node.js項目。無法在瀏覽器上顯示我的變量
當我打印一個變量使用console.log,我得到我的變量在控制檯上。 但是,當我將這個變量發送給客戶端時,它似乎在瀏覽器上形成[object Object]。 如何在瀏覽器上看到我的變量?
感謝
我正在處理一個socket.io + Node.js項目。無法在瀏覽器上顯示我的變量
當我打印一個變量使用console.log,我得到我的變量在控制檯上。 但是,當我將這個變量發送給客戶端時,它似乎在瀏覽器上形成[object Object]。 如何在瀏覽器上看到我的變量?
感謝
嘗試console.log(JSON.stringify(myVariable));
,然後看看它在你的瀏覽器,你會獲得更多的有識之士來發生的事情完全一樣。
您可能使用的0.6服務器端語法:
socket.send({foo: 'bar'})
嘗試使用以下更新過的語法:
socket.json.send({foo: 'bar'})
您可以在這裏找到更多的信息: https://github.com/LearnBoost/Socket.IO/wiki/Migrating-0.6-to-0.7
感謝,的console.log(JSON.stringify(MYVARIABLE));爲我的案件工作。變量顯示爲 {coloumn_that_result_lays:「result」}。當然,我們可以用javascript-substring來克服它,但是有一個直接給出「結果」的函數。
// Require HTTP module (to start server) and Socket.IO
var io = require('socket.io'),
http = require('http');
io = require('socket.io');
// Start the server at port 8080
var server = http.createServer(function(req, res){
// Send HTML headers and message
res.writeHead(200,{ 'Content-Type': 'text/html' });
res.end('<h1>Hello Socket Lover!</h1>');
});
server.listen(8080);
// Create a Socket.IO instance, passing it our server
var socket = io.listen(server);
// Add a connect listener
socket.on('connection', function (client){
//mysql
var mysql = require('db-mysql');
new mysql.Database({
hostname: 'localhost',
user: 'root',
password: '123123',
database: 'node'
}).connect(function(error) {
if (error) {
return console.log('CONNECTION error: ' + error);
}
this.query('SELECT data FROM exam where id=2 ').
execute(function(error,result) {
if (error) {
console.log('ERROR: ' + error);
return;
}
client.json.send(JSON.stringify(result));
});
});
// Create periodical which ends a message to the client every 5 seconds
var interval = setInterval(function() {
client.send('This is a message from the server! ');
},1000);
// Success! Now listen to messages to be received
client.on('message',function(event){
console.log('Received message from client!',event);
});
client.on('disconnect',function(){
clearInterval(interval);
console.log('Server has disconnected');
});
});
client.json.send(result.coloumn_that_result_lays); – goatslacker
關於你如何做的一些代碼將很高興看到。努力與這麼少的信息imo。 –