[英]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 throw er; // 未处理的“错误”事件 ^
错误:在 TLSWrap.onStreamRead (node:internal/stream_base_commons:220:20) 读取 ECONNRESET 在 WebSocket 实例上发出“错误”事件:
我不完全确定这是您的问题,因为错误看起来无关。
但是data.toString()
只会返回"[object Object]"
。 您需要使用JSON.stringify(data)
ECONNRESET
通常意味着连接被意外关闭。 也许您的服务器收到您的有效负载并以某种方式关闭连接,因为它是[object Object]
而不是有效的 JSON?
使用“JSON.stringify(data)”将 Object 转换为字符串
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.