如何将信息包发送到 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?的主要内容,如果未能解决你的问题,请参考以下文章

WebSocket服务端和客户端代码示例

WebSocket服务端和客户端代码示例

了解一下websocket

如何在 pusher 的帮助下使用 websocket 从数据库中获取数据?

编码数据以发送到 websocket 服务器

如何通过WebSocket的二进制发送arraybuffer