首页 > 解决方案 > React 中的 C 套接字和 socket.io/Websockets 是否兼容?

问题描述

所以我在 C 中创建了一个简单的聊天服务器/聊天客户端。聊天客户端从标准输入读取并输出到标准输出。目标是使其适应前端 Web UI。我正在考虑使用 React,似乎最常用的套接字库是 socket.io 或 Websockets。

所以我的大问题是:我可以用使用 socket.io 或 Websockets 连接到 C 中的聊天服务器的 React 聊天客户端替换我在 C 中构建的聊天客户端吗?

两个插座是否兼容?

标签: creactjssocketswebsocketsocket.io

解决方案


答案是“是”和“否”,但justcivah 给出的答案可能应该是“否”,因为它缺少重要信息(编辑:引用的答案已被删除)......

原因是 WebSockets 是一种协议,因此您的服务器需要了解该特定协议。

WebSockets 协议通常作为 TCP/IP 套接字上的附加层(这是您可能在 C 聊天服务器上拥有的唯一层)运行,并且它在“消息”(有效负载)之前包含附加(“标头”)数据。WebSockets 还需要基于 HTTP 的握手(尽管将来可能会添加其他可能的握手)。

C 中有许多不同的 WebSocket 库可以帮助您在 C 聊天服务器中实现 WebSockets 协议 - 只需搜索 C WebSocket Framework 或类似的东西。


推荐阅读