问题标签 [libwebsockets]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
36650 浏览

c - Libwebsocket 客户端示例

我试图找到一个示例来解释我如何使用 libwebsocket 实现客户端,但我没有得到任何令人信服的代码。有什么链接可以参考吗?

0 投票
1 回答
1636 浏览

linux - 在centos 7上使用websockets安装mosquitto时出错

我已按照以下步骤操作:

一切顺利,直到安装 mosquitto 的最后一行... sudo make install 这就是控制台显示的内容:

可能是什么问题呢?

0 投票
2 回答
1343 浏览

c++ - 如何在 Visual C++ 中使用开源 C 库

我试图将 ac 库 libwebsockets(https://github.com/warmcat/libwebsockets)用于我的 c++ 程序。我按照手册进行操作,它创建了一个视觉工作室解决方案,并且可以正常工作。

由于我不习惯在 Windows 7 Visual Studio 环境中开发程序,我不确定库是如何工作的。看起来解决方案包含一些测试代码和核心库。

在 windows7 环境中,使用这个 C 库开发 C++ 项目的最佳方法是什么?

我正在考虑两种方法:

  1. 在c++项目上添加c项目

  2. 在c项目上添加c++项目

0 投票
1 回答
277 浏览

mosquitto - 在 Intel Edison 上构建 Mosquitto 找不到 websockets 库

我已经根据README中的说明成功构建了 libwebsockets 。当我尝试在启用 websockets 的 情况下构建 mosquitto 1.4.2(基于此处找到的说明)时,出现以下错误。

有问题的行是BROKER_LIBS:=$(BROKER_LIBS) -lwebsockets,在config.mk。我已经尝试了以下两种方法,并为其提供了.so文件的完整路径:

我正在研究英特尔爱迪生。

0 投票
2 回答
5128 浏览

cmake - 设置 CLion 构建和二进制目录

我正在尝试在 CLion 的项目中构建 libwebsockets。在构建过程中,libwebsockets 会创建一个其他文件需要的头文件并将其放在 PROJECT_BINARY_DIR 中。CLion 在它为项目创建的随机构建目录中构建所有内容,并且头文件最终位于该目录中。我试过了:

  • 设置 websockets_BINARY_DIR 变量
  • 设置 CMAKE_RUNTIME_OUTPUT_DIRECTORY 变量
  • 设置 CMAKE_LIBRARY_OUTPUT_DIRECTORY 变量
  • 将 CMake 缓存中的每个变量更改为远离 CLion 的随机目录
  • 更改 CLion 首选项中的构建输出路径设置

这些都不起作用,这让我想到了我的问题:

  • 有没有办法告诉 CLion 在哪里构建(不仅仅是在哪里放置它的一些输出,而是如何覆盖它选择的随机目录)。
  • 如果没有办法告诉 CLion 在哪里构建,我应该设置另一个变量吗?
0 投票
1 回答
1047 浏览

linux - 在另一个线程上更改 pollfd 时 Linux 和 OS X 之间 poll() 的差异

我试图让 libwebsockets 在 OS X 上的多线程环境中运行。我无法触发从与主服务线程不同的线程发送数据。在 libwebsocket 文档中暗示这应该是可能的(演示代码邮件列表)。所以我深入研究了代码,在 poll() 函数中发现了问题。

似乎 poll() 对struct pollfd作为参数给出的 that 表现不同。libwebsockets 依赖于在 poll() 处于活动状态时更改 fds.event 字段的可能性。这在 Linux 上运行良好,但不适用于 OS X。

我写了一个小测试程序来演示这种行为:

在 OS X 上使用编译clang++ -std=c++11 -stdlib=libc++ -o poll poll.cpp ,在 Linux 上使用编译g++ -std=c++11 -pthread -o poll poll.cpp

程序开始侦听端口 3490。如果您连接到它(例如使用netcat localhost 3490),它将轮询主线程上的输入并尝试更改第二个线程中的事件标志。它将在 5 秒后退出。

OS X 上的输出:

Linux 上的输出:

所以我的问题是:是否有任何可用的文档可以解释这种行为?libwebsockets 期望在 poll 处于活动状态时更改 fds.events 是合法的,这是否安全?我在手册页( OS XLinux)中找不到有关它的任何详细信息。

0 投票
0 回答
500 浏览

javascript - 如何在 Windows 机器中为 MQTT(蚊子代理)编译 libwebsockets?

我正在从事混合应用程序开发。我想在我的应用程序中实现 MQTT 服务。我听说 JavaScript 只支持 websocket 协议与 MQTT 代理通信。对于那个 libwebsocket 是必需的,但是,我无法得到任何解释“如何在我的 Windows 7 机器中为 MQTT 编译 libwebsockets”。您能否详细说明在 Windows 机器中使用 libwebsocket 安装 MQTT 的详细方法。

0 投票
0 回答
121 浏览

windows - Windows 上 64 个连接后出现 libwebsocket 错误

我在使用 libwebsocket 时看到了奇怪的行为。只要我将同时传入的 websocket 总数保持在 64 以下,它就可以完美运行。

但是,当又有一个传入请求“WSAWaitForMultipleEvents”返回 WSA_WAIT_FAILED 并且 GetLastError 将错误报告为 87。

我的回调只是返回 0。

0 投票
1 回答
741 浏览

libwebsockets - libwebsockets libwebsocket_client_connect函数参数

这是签名libwebsocket_client_connect()

这里有人可以解释路径参数是什么意思吗?

在文档中,它写为路径 - 服务器上的 websocket 路径。但我无法理解它的正确含义。

0 投票
2 回答
1347 浏览

libwebsockets - 在 libwebsockets 下,如何在服务器端接收大于 4096 的消息?

我用 libwebsockets 库创建了一个 websocket 服务器,协议列表是这样的:

};

当我使用“html + javascript + chromium 浏览器”作为客户端发送大于 4096 字节的 websocket 消息时,websocket 服务器将多次收到 LWS_CALLBACK_RECEIVE 回调,一条消息拆分为两条或更多,最大接收大小为 4096 .

如何在服务器端接收无限大小的 websocket 消息?