问题标签 [websocket++]
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.
c++ - 比较 connection_hdl (weak_ptr) 是否相等
我需要比较两个websocket++ connection_hdl:
我试过这段代码
但编译器抱怨说connection_hdl is not a template
。
可以修改上面的代码来比较connection_hdls吗?connection_hdls 可以通过使用 owner_less 与容器一起使用,因此根据我的经验,可以使用所有权进行比较是有道理的。
我能找到的唯一其他相关技术是比较weak_ptrs
这似乎接近我的需求,但由于我的经验不足,我无法确定或修改该代码以适应我的意图。
如何比较两个 connection_hdls 是否相等?
这安全吗?
我将第一个代码修改为此
它编译。除了 weak_ptr 空虚警告之外,这是否安全?我的经验不足使我无法准确确定,而我有限的经验告诉我,仅仅因为它可以编译,并不意味着它会按预期工作。
c++ - Zaphoyd websocketpp 和 wss (TLS) 客户端示例
我需要快速、安全和便携的 websockts,所以我一直在互联网上进行挖掘,我遇到了Zaphoyd Studios的 WebSocket++ 。
我的 c++ 经验为零(尽管我是一名熟练的程序员),但它似乎勾选了我需要的每一个框,我很快在github上调整了 echo_server 和 telemetry_client 示例,并整理了一个概念证明。
将手放在 wss 服务器示例 (echo_server_tls) 上,我快速编译并使用了一个简单的测试客户端来验证它是否正常工作。
不幸的是,我的经验不足让我失望,我天真地希望将 url 更改为 wss 并包括启用 tls 的客户端标头(asio_client.hpp 不是 asio_no_tls_client.hpp)会让我朝着正确的方向前进!
它没有,而是给出了错误;-
所以......我的问题; -
有没有人有一个“echo_client_tls”示例让我朝着正确的方向前进,我非常怀疑我是第一个这样做的人(尽管可能只是最缺乏 C++ 经验的人)。
我确信我可以从那里拿走它(我什至会将它提交回 git,因为它可能对我自己等其他菜鸟有用)。
PS 感谢作者,如果他们读过这篇文章,这似乎是一个非常完整的实现!
c++ - IP地址v4/v6等效测试
是否可以在同时使用 IPv4 和 IPv6 的双栈环境中测试 IP 地址的等效性?如果是这样,怎么做?
我的应用程序在 Boost ASIO 之上使用websocket++ 。
例如,在我的 LAN 上,一个应用程序连接到另一个正在侦听的应用程序192.168.1.2
,但使用此答案的 IP 地址获取器
给出::ffff:192.168.1.3
作为客户的地址。
问题是.2
它将有自己的节点列表和原始 v4 地址,因此通过简单的字符串比较上面的 getter 与磁盘上保存的 v4 版本,即使已经连接.3
,它也会寻找冗余连接。.3
我进一步读到,事情可能会变得更复杂,因为通过这种虚线四边形表示法,::ffff:192.0.2.128
也是::ffff:c000:0280
。
我正在构建一个 p2p 应用程序,该应用程序接受来自不受信任来源的地址,因此为了防止冗余连接,我需要能够绝对测试等效性。
我的意图可以实现吗?如果是这样,怎么做?如果没有,我应该只使用 v4 吗?我宁愿现在就包含未来的功能,而不是担心以后的集成。
c++ - 使用 Websocketpp 时的控制台输出
我正在调试一些使用 websocketpp 的外国代码。我不断得到相当冗长的控制台输出,尽管一切正常。我可以禁用输出还是至少指向特定的东西?BR,丹尼尔
c++ - 如何让 WebSocket 服务器在 aws 上运行
我正在开发一个需要实时双向服务器/客户端消息传递的 iOS 应用程序。
我正在尝试使用WebSocket++在 AWS EC2 上开发 WebSocket 服务器应用程序。必须使用 C++,因为这是我在服务器端知道的唯一语言。问题是我是服务器端开发的新手。我有两个非常基本的问题:
1,我是否需要设置像 apache/nginx 这样的 HTTP 服务器才能运行 websocket?也就是websocket app可以单独独立存在吗?
2,我现在已经设置了一个nginx服务器,以防万一,有什么资源可以参考让nginx和websocket一起工作吗?
boost - 使用 Websocketpp 时 EXE 大小膨胀
我已经构建了一个非常基本的 EXE,它使用 Websocketpp 客户端,它只连接到 Websocket 服务器,并发送和接收消息。我用过VS 2013。
我注意到EXE的大小是巨大的。这就像 2.3 MB 的发布和 6 MB 的调试。
关于如何减小 EXE 大小的任何想法?
c++ - 如何实现 websocket++ ping 处理程序?
我正在尝试通过在 websocket++ 应用程序上发送 ping 来检测在未发送关闭帧的情况下关闭的丢失连接。
我在设置处理程序时遇到问题。
我最初尝试设置它,就像使用broadcast_server 示例设置处理程序一样:
这给出了这个错误:
注:候选人是:
websocketpp/endpoint.hpp:240:10: 注意: void websocketpp::endpoint::set_ping_handler(websocketpp::ping_handler) [with connection = websocketpp::connection; 配置 = websocketpp::config::asio_tls_client; websocketpp::ping_handler = std::function, std::basic_string)>]
无效 set_ping_handler(ping_handler h) {
我认为为这个问题设置一个typedef
like可以解决它,但是把它放在外面就无法访问了。class broadcast_server
m_server
如何正确实施此处理程序?
包括和标志
提升 1.54
旗帜
typedef
websocket++ - 关闭 websocket++ 连接
在 ASIO 模式下使用 Websocket++ 时,我开始连接:
此模式是从提供的示例中复制的(带有修改)。当用户按下按钮取消 websocket 时,我应该如何正确清理?我目前正在做:
我也应该打电话x->close()
吗?我需要在打电话close
之前等待stop
吗?我需要杀死thread
创建的那个,还是会自动停止?我收到了有关当前代码使 websocket 会话处于打开状态的报告。
c++ - Websocketpp 简单的HTTP客户端
我使用优秀的websocketpp库在 C++ 应用程序中提供 Websockets(和 HTTP)服务器。我还需要在同一个应用程序中使用 HTTP 客户端来连接到 REST API。我也一直在 websocketpp 中尝试这样做,但到目前为止我收效甚微。以下初步尝试给了我这个日志输出:
这表明我的http_
处理程序方法可能需要更多东西。任何意见,将不胜感激。websocketpp 文档和示例似乎不包含简单的 HTTP 客户端。
websocket++ - 从关闭消息中检索代码/原因
我想从关闭消息中检索代码和原因。我已经用 注册了一个处理程序set_close_handler
,但它没有得到有效负载。另外,我发现了一个有效载荷websocketpp::close::extract_code
并websocketpp::close::extract_reason
返回相关部分。关闭的有效载荷是否存储在某个地方?中的最后一个代码/原因是否可用connection_ptr
?