无法通过 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)”将对象转换为字符串
在我创建 .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)”将对象转换为字符串