我在前端有一个对象,我想将它广播到所有连接的客户端。我可以按照我定义的方式将其作为纯粹的对象发送吗?或者我总是必须在发送之前将其字符串化为 JSON 对象?
我的对象:
var myBox = {
x: 400,
y: 700,
w: 231,
h: 199,
c: "red",
....
}
我需要字符串化吗?
var myBox = JSON.stringify({
x: 400,
y: 700,
...
});
目前我像这样发送它,消息是一个 JSON:
socket.emit('message', msg);
您可以将对象传递给emit
无需自己将其字符串化。它将作为纯文本发送,但客户端回调将传递一个已解析的对象。
换句话说,这样做就可以了:
var myBox = {
x: 400,
y: 700,
w: 231,
h: 199,
c: "red"
}
socket.emit('message', myBox);
在客户端监听时,您无需担心JSON.parse
:
socket.on('message', function (data) {
alert(data.x);
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)