如何将信息包发送到 WebSocket?
Posted
技术标签:
【中文标题】如何将信息包发送到 WebSocket?【英文标题】:How do I send a packet of information to a WebSocket? 【发布时间】:2013-12-09 22:39:40 【问题描述】:所以我试图将信息包从服务器发送到套接字,反之亦然。 我只看到一种发送字符串的方法。我需要做的是发送一个带有特定标头的变量,该标头定义该变量是什么类型的数据。数据可以是 chat_Message 到 player_move 事件之间的任何数据。
我还想立即发送一份信息清单。该列表将包括 5 个变量。 4 个字符串和一个 int。我也需要给它一个标题。
服务器在 C#.net SuperWebSockets 中,客户端在 web 服务器上的 javascript 中。
代码示例也很好,谢谢!
【问题讨论】:
I only see a way to send strings
然后将您的数据发布为 json 或 xml。
嗯,列表不存储在文件中,当服务器连接到主服务器时,它会暂时将其当前存在添加到列表中,然后将其发送给客户端。一旦该服务器与主服务器断开连接,服务器就会将其从列表中删除。只是简单的数据被发送回来,第四,使用 json 和 xml 文件来存储数据会使主服务器太大
json 或 xml 不必存储为文件。只是有一些标准规则的文本。你在这里看到的是一个合法的 json for ex,只需复制粘贴并发送到服务器"cmd":"DoSomething","parameters":["p1","p2"]
我明白了,但我尝试将它放在我的 C# 代码中以发送给客户端: session.Send("str":"some data");但我得到语法错误
好的,C# 语法要求转义字符串中的"
字符。但我退出了,忘记我的 cmets。
【参考方案1】:
假设您正在创建要在 JavaScript 服务器上发送和处理的 JSON 字符串,猜猜是 NodeJS 吗?您应该考虑在 .Net 端使用 JSON.Net 之类的库。
http://james.newtonking.com/json.
以上将提供如何将 C# 对象或变量集转换为可发送到 javascript 服务器的字符串的示例。
一旦您在 JavaScript 端,请参阅您用于将字符串再次转换为 javascript 对象的服务器的文档。
Starter 将查找“JSON.parse”函数。
Json 不是一种文件格式,您可以将文件存储在 Json 中,但这是偶然的。 Json 是一种序列化技术,用于将对象及其关联的对象和字段转换为适合传输或存储的格式。这似乎正是您想要做的。
另一条路线是使用 POST 变量和/或 URL 编码,这是一种更复杂的方法。
【讨论】:
我使用的是 SuperWebSockets 而不是问题中所述的 NodeJS。以上是关于如何将信息包发送到 WebSocket?的主要内容,如果未能解决你的问题,请参考以下文章