C++ WebSocket 库

栏目: 后端 · 发布时间: 6年前

内容简介:WebSocket 是 HTML5 的一个引入注目的特性,它通常用于 Web 端,为构建实时的 Web 应用提供方便。WebSocket 是一个基于 TCP 的协议,它借助于 HTTP 请求,建立客户端与服务器端之间的双向通道,通道建立完成后,客户端和服务器端都可以通过这条通道方便地收发消息,因而 WebSocket 一向有着 “Web 的 TCP” 之称。其中,ws-rs,从中我们可以捞到 uWebSockets、Crow、websocketpp、Beast 这样几个 C/C++ 的 WebSocket

WebSocket 是 HTML5 的一个引入注目的特性,它通常用于 Web 端,为构建实时的 Web 应用提供方便。WebSocket 是一个基于 TCP 的协议,它借助于 HTTP 请求,建立客户端与服务器端之间的双向通道,通道建立完成后,客户端和服务器端都可以通过这条通道方便地收发消息,因而 WebSocket 一向有着 “Web 的 TCP” 之称。

WebSocket 不是 JavaScript 的一个接口,而是一个定义良好的基于消息的协议。得益于不同平台对于 WebSocket 协议的广泛实现,它更为跨多种平台的 实时网络应用程序 开发提供了极大的方便。除了可以在前端开发的 JavaScript 中使用 WebSocket 之外,我们也可以在 Java 、C++、 Go 、Rust 等编程语言平台中使用 WebSocket。

uWebSockets 是一个 C/C++ 的 WebSocket 库,它的 GitHub 主页 列出了一些常见的 WebSocket 实现库的对比,如下图:

C++ WebSocket 库

其中,ws-rs, 项目主页GitHub 主页 ,是一个轻量级的,事件驱动的用于 Rust 的 WebSocket 库。Gorilla, 项目主页GitHub 主页 ,是 Go 语言的 Web 工具包,它包含了 WebSocket 的实现,WebSocket 实现的 GitHub 主页 。websockets, 项目主页GitHub 主页 ,是一个 Python 的 WebSocket 实现。Socket.IO, 项目主页GitHub 主页 ,主要是 Node.JS 服务器的实时应用框架,其中包含了 WebSocket 的实现。其它库则都是 C/C++ 的 WebSocket 实现。

从中我们可以捞到 uWebSockets、Crow、websocketpp、Beast 这样几个 C/C++ 的 WebSocket 库。此外,还有 libwebsockets 和 POCO 库的 WebSocket 模块可以用。这里汇总已知的可以在 C++ 中使用的 WebSocket 库。

uWebSockets

GitHub 主页

uWebSockets,µWS (“microWS”) 是一个客户端和服务器的 WebSocket 和 HTTP 实现。它简单、高效且轻量级。

Crow

GitHub 主页

Crow 是一个 Web 微框架。

websocketpp(WebSocket++)

websocketpp 是 C++ 的 WebSocket 客户端/服务器库。它是一个开源的只包含头文件的 C++ 库,它实现了 RFC6455 WebSocket 协议。它允许向 C++ 程序中集成 WebSocket 客户端和服务器功能。它使用可交换的网络传输模块,包括基于 C++ iostreams 的和基于 Boost Asio 的。

Beast

基于 Boost.Asio 以 C++11 构建的 HTTP 和 WebSocket 库。Boost 项目的 HTTP 和 WebSocket 库。

Poco Websocket

POCO C++ 库是一个跨平台的 C++ 网络库。其中包含了 WebSocket 的实现模块。

libwebsockets

GitHub 主页

规范 libwebsockets.org websocket 库

参考资料:

C++ WebSocket++ 的Client使用详解

基于C/C++的WebSocket库

Done.


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

1024·人与机器共同进化

1024·人与机器共同进化

东西文库 / 译言·东西文库/电子工业出版社 / 2013-12-20 / 55元

《1024》:国内第一本专注于科技文化的mook。 本期创刊号将目光定焦在“人与机器”这个超热点领域。 如果把机器获得思维能力看作是一种进化, 那人类具备不朽之躯同样也是一种进化。 这是一个野心勃勃但又充满不确定性的未来。 在我们一厢情愿地猜测机器将在不远的将来赶超自己而惶惶不可终日时,人类其实还有一个机会——变得更像机器。这并非科幻小说,而是正在发生的现实。人类创造......一起来看看 《1024·人与机器共同进化》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具