这里有个奇怪的问题。
我有两个申请。
服务器应用 Unity3D应用程序,它捕获游戏中的帧,转换为JSON并发送到连接的客户端。
客户端应用 连接到服务器并通过TCP接收数据。接收的数据将转换为字符串,然后从JSON反序列化为对象。
服务器发送:
public void Send(byte[] dataToSend)
{
var message = new MessageData();
message.Bytes = dataToSend;
var json = JsonConvert.SerializeObject(message);
var bytesToSend = Encoding.ASCII.GetBytes(json);
clientSocket.Send(bytesToSend, 0, bytesToSend.Length, SocketFlags.None);
}
客户接收:
public void StartReceiving(TcpClient client)
{
if (!client.Connected) return;
try
{
var stream = client.GetStream();
if (!stream.DataAvailable) return;
var buffer = new byte[500000];
var bytes = stream.Read(buffer, 0, buffer.Length);
var json = Encoding.ASCII.GetString(buffer);
var message = JsonConvert.DeserializeObject<MessageData>(json);
//raise image received event
ImageReceivedEventArgs args = new ImageReceivedEventArgs();
args.Bytes = message.Bytes;
args.Time = DateTime.Now;
OnImageReceived(args);
}
catch (Exception exception)
{
}
}
MessageData 只是一个具有字节数组属性的类,名为&#34; Bytes&#34;。
现在,出于某种原因,这一切在本地都非常好用,JSON完美出现。但是,将我的服务器应用程序放到服务器上,我的JSON搞砸了。
以下是我收到的错误:
解析值时遇到意外的字符:问:路径&#39;&#39;,第0行,第0位。
如果有任何提示,我的服务器应用程序正在Amazon EC2实例上运行。
什么了?