socket.io服务器可以与非socket.io客户端通信吗

杰克·卡西迪

我正在构建一个聊天服务器,该服务器使用自定义协议通过套接字与客户端进行通信。客户端将特定的字符串发送到服务器,并且服务器必须基于这些非标准消息采取适当的措施。我无法更改此协议,也无法访问基础客户端代码。

我的问题是,如果我不知道客户端如何处理套接字活动,是否可以使用node.js socket.io包为服务器套接字通信供电?我问的原因是,每次阅读socket.io文档时,每当我通过套接字推送任何内容时,“事件”都与每个动作相关联。

是否可以将与此“事件”捆绑在一起的来自服务器的非常精确的消息发送给客户端?我最好使用websockets包吗?

jfriend00

socket.io服务器可以与非socket.io客户端通信吗

否。socket.io服务器需要用于启动连接的webSocket协议和在其之上的socket.io格式。因此,socket.io服务器只能与socket.io客户端通信,反之亦然。

如果您的聊天客户端使用自定义协议,则您需要实现一个也使用该自定义协议的TCP服务器(无论使用哪种协议)。

如果可以修改客户端,则可以将其修改为使用socket.io客户端,然后可以通过socket.io发送聊天消息,然后socket.io服务器可以接收这些消息。

客户端将特定的字符串发送到服务器,并且服务器必须基于这些非标准消息采取适当的措施。我无法更改此协议,也无法访问基础客户端代码。

然后,您必须实现一个服务器,该服务器根据客户端的任何基础协议使用您的自定义客户端协议。别无选择。

我问的原因是,每次阅读socket.io文档时,每当我通过套接字推送任何内容时,“事件”都与每个动作相关联。

这就是socket.io层的工作方式。它发送一条消息和(可选)数据。只需声明一个通用data消息,然后data在另一端侦听该消息,就可以始终使用它来发送数据但是,这假定您可以同时修改客户端和服务器以使其工作。如果您不能修改客户端以使用socket.io协议,则不能使用socket.io。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

socket.io服务器与客户端之间无通信

无法在 Android 客户端和 Node.js socket.io 服务器之间通信

无法使用 socket.io 在 nodejs 服务器和客户端之间通信我的数据

无法在玩笑中运行 socket.io 服务器以测试 React 中的客户端套接字通信

我可以通过本机java.net.Socket将Android客户端与使用socket.io的节点js服务器连接吗?

如何使用socket.io从客户端调用服务器端功能?

Nestjs 服务器不为 socket.io 客户端提供服务

socket.io客户端未连接到在socket.io中创建的Azure服务器

Nodejs socket.io 客户端无法连接到 Nodejs socket.io 服务器

节点js-Socket.io客户端未连接到socket.io服务器

从客户端向服务器发送虚假的socket.io请求(node.js / socket.io)

浏览器与服务器在socket.io客户端行为上的差异

如何从客户端socket.emit服务器端socket.io捕获名称空间来源

Socket.io 客户端无法与 websocket 服务器配合使用

Express与Socket.IO:服务器不接收来自客户端的发射

使用 socket.io 的聊天应用程序背后的客户端 - 服务器架构

在Socket.io中将回调函数从客户端发送到服务器

socket.io服务器的Node.js客户端

SSL socket.io 客户端未收到服务器响应

使用Socket.IO的Python客户端到nodeJS服务器

从服务器(`node.js`)而不是从客户端触发`socket.io`事件

使用Socket.io将客户端连接到服务器

无法让 socket.io 客户端连接到服务器

Socket.io客户端一次连接到多个服务器

electronic / socket.io客户端-python-socketio / aiohttp服务器//连接失败

socket.io 客户端无法向服务器发送消息

如何从服务器发送cookie到socket.io客户端?

python服务器和javascript客户端的socket.io连接问题

使用socket.io和nodejs强制客户端与服务器断开连接