我是WebSockets新手,正在为一个基本的聊天应用程序从客户端向服务器端发送数据,然后再返回客户端.我可以将数据发送到服务器端,并用JSON很好地解析它.但是当试图将其返回到客户端时,我在试图解析它时出错.错误是"JSON中位置1处的意外令牌o",我认为这意味着我试图解析的不是JSON对象.但不明白为什么它在发送回客户端时会发生变化.
以下是将数据发送到服务器端的客户端脚本:
var userMessage = messageBox.value;
var userId = user.value;
ws.send(JSON.stringify({
text: userMessage,
id: userId
}));
捕获并将其发送回客户端的服务器端脚本:
ws.on('message', function incoming(data) {
client.send(data);
})
然后回到客户端,我捕获返回的数据,并将其发送到一个函数以进行如下显示:
function showMessage(data) {
const obj = JSON.parse(data);
const textMessage = obj.text;
console.log(textMessage);
}
ws.onmessage = ({ data }) => showMessage(data);