什么是从 unity3d 发送 json
What's send json from unity3d
我决定在unity3d上用javascript重写游戏客户端。 Java netty 上的套接字服务器。
我正在使用 c# 库 socket.io 发送 json。
JSONObject j = new JSONObject();
j.AddField("q", "q");
Debug.Log(j.ToString());
socket.Emit(j.ToString());
Debug.Log(j.ToString());
显示 {"q":"q"}
,但服务器消息总是在文本 42["{"q":"q"}"]
.
前带有 42
System.out.println(((TextWebSocketFrame) frame).text());
=> 42["{"q":"q"}"]
这个42是什么?显示 42,无论出现什么 json。
来自 javascript 的 Json 已正确接收。
在我看来,您正在通过 socket.io 发送数据,然后尝试通过 netty 接收数据。
Socket.io 不是(纯粹)用于打开 websocket 连接并通过它发送数据的库,它在 websocket 层之上有一个消息和通道协议。
尝试确保双方使用相同的库。
问题是第一个数字表示 socket.io EnginePacketType
,第二个 socketPacketType
.
EnginePacketType.MESSAGE = 4;
packet.socketPacketType(EVENT) = 2;
我决定在unity3d上用javascript重写游戏客户端。 Java netty 上的套接字服务器。
我正在使用 c# 库 socket.io 发送 json。
JSONObject j = new JSONObject();
j.AddField("q", "q");
Debug.Log(j.ToString());
socket.Emit(j.ToString());
Debug.Log(j.ToString());
显示 {"q":"q"}
,但服务器消息总是在文本 42["{"q":"q"}"]
.
System.out.println(((TextWebSocketFrame) frame).text());
=> 42["{"q":"q"}"]
这个42是什么?显示 42,无论出现什么 json。 来自 javascript 的 Json 已正确接收。
在我看来,您正在通过 socket.io 发送数据,然后尝试通过 netty 接收数据。
Socket.io 不是(纯粹)用于打开 websocket 连接并通过它发送数据的库,它在 websocket 层之上有一个消息和通道协议。
尝试确保双方使用相同的库。
问题是第一个数字表示 socket.io EnginePacketType
,第二个 socketPacketType
.
EnginePacketType.MESSAGE = 4;
packet.socketPacketType(EVENT) = 2;