使用 libwebsockets 在同一个可执行文件中实现 WebSocket 和 LWSWS 服务器

Implement WebSocket and LWSWS servers in same executable with libwebsockets

我正在尝试创建 libwebsockets v2.0 中提供的 Web Socket 服务器和 LWSWS Web 服务器。

我只需要一个简单的 Web 服务器来向浏览器提供 HTML/JS/CSS 内容,以及一个 Web 套接字服务器来与 Web 前端一起工作。

唯一可用的文档真的很短而且没有说明任何内容,因为 v2.0 是全新的。 libwebsocketsGitHub建议参考项目中的LWSWS例子,但是程序实现和运行一个服务器为LWSWS 和 Web Socket 服务器不匹配(第一个使用 libuv 事件循环 ,另一个使用 内置的 libwebsockets 函数 )。

也许唯一的解决方案是实现我自己的 http 回调,但我想确保没有更快的解决方案使用 LWSWS

我设法从 libwebsockets 编译并 运行 一个 LWSWS 服务器,嵌入了一个 HTTP 服务器 和同一个可执行文件中的 Web Socket 服务器

指南

  1. 使用示例 lwsws/main.c 中的代码,并复制 .h.c 编译 LWSWS 服务器的依赖项
  2. 使用示例 plugin-standalone/protocol_example_standalone.c 中的代码来编译您的 协议插件 .dll
  3. lwsws/etc-lwsws-conf.d-localhost-EXAMPLElwsws/etc-lwsws-conf-EXAMPLE[=33 创建快速服务器和虚拟主机配置=]
  4. 将已编译的插件和库放在正确的位置并享受您的服务器

万一它可能有帮助!