c - React 中的 C 套接字和 socket.io/Websockets 是否兼容?
问题描述
所以我在 C 中创建了一个简单的聊天服务器/聊天客户端。聊天客户端从标准输入读取并输出到标准输出。目标是使其适应前端 Web UI。我正在考虑使用 React,似乎最常用的套接字库是 socket.io 或 Websockets。
所以我的大问题是:我可以用使用 socket.io 或 Websockets 连接到 C 中的聊天服务器的 React 聊天客户端替换我在 C 中构建的聊天客户端吗?
两个插座是否兼容?
解决方案
答案是“是”和“否”,但justcivah 给出的答案可能应该是“否”,因为它缺少重要信息(编辑:引用的答案已被删除)......
原因是 WebSockets 是一种协议,因此您的服务器需要了解该特定协议。
WebSockets 协议通常作为 TCP/IP 套接字上的附加层(这是您可能在 C 聊天服务器上拥有的唯一层)运行,并且它在“消息”(有效负载)之前包含附加(“标头”)数据。WebSockets 还需要基于 HTTP 的握手(尽管将来可能会添加其他可能的握手)。
C 中有许多不同的 WebSocket 库可以帮助您在 C 聊天服务器中实现 WebSockets 协议 - 只需搜索 C WebSocket Framework 或类似的东西。
推荐阅读
- python - PyPDF2 无法读取非英文字符,在 extractText() 上返回空字符串
- php - 如何在实时服务器上使用 sudo 运行 php exec
- matlab - 在 matlab 中使用 disp_function 显示斐波那契数列
- ruby-on-rails - 某些变体的 Rails ActiveStorage 变体 IntegrityError 但未修改的图像始终显示
- msmq - MSMQ 事务性或可恢复
- c# - 我们如何将 XML 作为请求传递给 .Net 核心 API,并从 C# 中的相同 API 获取 XML 响应?
- jenkins - Jenkins 管道代理使用环境变量
- ios - 如何向具有 yelp api 数据的表视图添加搜索功能?
- django - Django模板:如何传递格式化字符串以包含标签
- jpa - JPARepository - 有时会创建重复记录