Socket.io 发送数组时出错
Socket.io error in sending arrays
我有 3 个变量要使用 socket.io 发送给客户端,即 mapRes
和 location
。
server.js
var mapRes = {width : 720, height: 1040};
var location = [{x:100,y:100,z:100},{x:200,y:200,z:200}];
var obj = {'1':{x:100,y:200}}, '2':{x:200,y:100}};
io.on("connection", function(socket){
socket.emit("mapRes",mapRes);
socket.emit("location",location);
socket.emit("object",obj);
}
client.html
socket.on('mapRes',function(message){
var mapRes = message;
console.log(mapRes);
});
socket.on('location',function(message){
var location = message;
console.log(location);
});
socket.on('object',function (message){
var object = message;
console.log (object);
});
在客户端(浏览器),第一个变量 mapRes
按预期接收。
Object { width: 720, height: 1040 }
然而,接收到的第二个变量如下所示:
Array [ Object, Object]
收到第三个对象如下:
Object { 1: Object, 2: Object}
有没有办法正确接收这些variables/objects?
它可能已正确发送,您只是没有看到整个对象。
这是由于 Firefox 在登录到控制台时折叠对象:
如果单击带下划线的对象,右侧面板应打开并显示有关该对象的更多详细信息。
我有 3 个变量要使用 socket.io 发送给客户端,即 mapRes
和 location
。
server.js
var mapRes = {width : 720, height: 1040};
var location = [{x:100,y:100,z:100},{x:200,y:200,z:200}];
var obj = {'1':{x:100,y:200}}, '2':{x:200,y:100}};
io.on("connection", function(socket){
socket.emit("mapRes",mapRes);
socket.emit("location",location);
socket.emit("object",obj);
}
client.html
socket.on('mapRes',function(message){
var mapRes = message;
console.log(mapRes);
});
socket.on('location',function(message){
var location = message;
console.log(location);
});
socket.on('object',function (message){
var object = message;
console.log (object);
});
在客户端(浏览器),第一个变量 mapRes
按预期接收。
Object { width: 720, height: 1040 }
然而,接收到的第二个变量如下所示:
Array [ Object, Object]
收到第三个对象如下:
Object { 1: Object, 2: Object}
有没有办法正确接收这些variables/objects?
它可能已正确发送,您只是没有看到整个对象。
这是由于 Firefox 在登录到控制台时折叠对象:
如果单击带下划线的对象,右侧面板应打开并显示有关该对象的更多详细信息。