无法通过 WebSocket (NODE JS) 发送 json 数据

Can't send json data over WebSocket (NODE JS)

在我创建 .onopen 事件后,我让它启动了一些 json 数据,但是我得到了一个错误, 这是代码:

 ws.onopen = ('connect', function(connect) {
            let obj={};
            obj.name='data'
            message = 'connect';
            obj.body=message;
            var data = {"op": 0, "d": {"server_id": serverid, "user_id": author, "session_id": sessionid, "token": tokenn, "video": true, "streams": [
                {"type": "video", "rid": "100", "quality": -1}, {"type": "video", "rid": "50", "quality": 9223372036854775807}]}}, separators=(",", ":");

            ws.send(data.toString())


我得到的: node:events:368 扔呃; // 未处理的 'error' 事件 ^

错误:读取 ECONNRESET 在 TLSWrap.onStreamRead(节点:internal/stream_base_commons:220:20) 在 WebSocket 实例上发出 'error' 事件:

我不完全确定这是你的问题,因为错误看起来无关。

但是 data.toString() 只会 return "[object Object]"。您需要使用 JSON.stringify(data)

ECONNRESET 通常表示连接意外关闭。也许您的服务器接收到您的负载并以某种方式关闭连接,因为它是 [object Object] 并且无效 JSON?

使用“JSON.stringify(data)”将对象转换为字符串