You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript中WebSockets通信时JSON解析报错,请求排查问题

WebSocket后端推流失败问题排查解决

错误根源

前端监听WebSocket的message事件时,错误地尝试解构msg属性,但WebSocket消息事件对象的实际数据存储在data字段中。这会导致msg变量为undefined,执行JSON.parse(msg)时触发JSON解析错误(即截图中显示的Unexpected token u in JSON at position 0)。

修正后的前端代码

Socket.addEventListener("message", ({ data }) => 
{
    console.log(JSON.parse(data));
});

可选验证步骤

  • 后端可添加日志确认客户端连接状态,确保消息能发送到在线客户端:
    Websocket.Send = (msg) =>
    {   
        console.log('在线客户端数量:', Websocket.Socket.clients.size);
        Websocket.Socket.clients.forEach(client => {    
            client.send(JSON.stringify(msg));
        });
    }
    
  • 前端也可先打印原始事件对象,直观确认数据位置:
    Socket.addEventListener("message", (event) => 
    {
        console.log('原始事件:', event);
        console.log(JSON.parse(event.data));
    });
    

内容的提问来源于stack exchange,提问作者user19365766

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 07:20:33