使用 c# 和 WebSocket4Net 发送 Json
Posted
技术标签:
【中文标题】使用 c# 和 WebSocket4Net 发送 Json【英文标题】:Sending Json with c# and WebSocket4Net 【发布时间】:2017-08-21 03:37:08 【问题描述】:我正在尝试通过 C# 中的 websockets 将以下 JSON 数据发送到服务器:
"method": "ms.remote.control",
"params":
"Cmd": "Click",
"DataOfCmd": key,
"Option": "false",
"TypeOfRemote": "SendRemoteKey"
我正在使用以下代码将数据发送到服务器:
string json = @"""method"":""ms.remote.control"",""params"":""""Cmd"":""Click"",""DataOfCmd"":""KEY_MENU"",""Option"":""false"",""TypeOfRemote"":""SendRemoteKey""""";
string message = JsonConvert.SerializeObject(json);
websocketClient.Send(message);
这是序列化后的json数据输出:
"\"method\":\"ms.remote.control\",\"params\":\"\"Cmd\":\"Click\",\"DataOfCmd\":\"KEY_MENU\",\"Option\":\"false\",\"TypeOfRemote\":\"SendRemoteKey\"\""
我从服务器收到以下响应:
收到消息。服务器回答:
"event":"ms.error","data":"message":"missing method field from message"
我的 json 格式是否不正确?我知道 json 数据是正确的,因为消息在我试图从中移植的 python 程序中运行良好。
【问题讨论】:
如何获取服务器应答?谢谢 【参考方案1】:我想通了。服务器要求 json 的格式与上述完全相同。我将json格式化如下,命令成功!
string json = @"
""method"": ""ms.remote.control"",
""params"":
""Cmd"": ""Click"",
""DataOfCmd"": ""KEY_VOLUP"",
""Option"": ""false"",
""TypeOfRemote"": ""SendRemoteKey""
";
【讨论】:
以上是关于使用 c# 和 WebSocket4Net 发送 Json的主要内容,如果未能解决你的问题,请参考以下文章