websocketpp是一个只有头文件的支持websocket协议的C++开源库,支持websocket客户端和服务器功能,网络传输模块基于boost::asio.
提供 server 功能的 websocketpp::server 和提供 client 功能的 websocketpp:client 都继承自基类 websocketpp::endpoint , endpoint提供了一些通用的功能函数:
void set_access_channels(log::level channels);//设置日志级别
void clear_access_channels(log::level channels)//屏蔽某个级别的...
WebSocket, websocketpp阅读全文
libwebsockets增加ssl支持很简单,只需要在创建服务器时增加必要的信息就可以了。
一般来说只需要增加以下几行即可
struct lws_context_creation_info info; ...
/*证书的路径*/ info.ssl_cert_filepath = "xxx";
/*私钥的路径*/ info.ssl_private_key_filepath = "xxx&...
libwebsockets, 开源, 网络编程阅读全文
实现websocket服务器本身也是libwebsockets库的初衷,本篇博客将介绍如何利用libwebsockets库来实现一个简单的ws服务器。
1、添加websocket协议 这里创建服务器句柄的流程与http一致,需要修改的地方只有在创建服务器时传入的协议数组,即
struct lws_context_creation_info info; struct lws_context *context;
static struct lws_protocols protocols[] = &...
libwebsockets, 开源, 网络编程阅读全文
根据官方的说明来看,从2.0版本起,http协议的服务器已经自动集成在库中,不需要我们自己去实现。下面介绍如何使用库去实现http服务器。
1、填充服务器创建需要的参数
lws_context_creation_info是创建服务器句柄时用来定制服务器信息的结构体,所以我们首先需要填充该结构体。该结构体的定义如下。
/*这里只列出我们常用的成员,注释很详细,不做过多解释*/
struct lws_context_creation_info {
int port;
...
libwebsockets, 开源, 网络编程阅读全文
libwebsockets是一款轻量级用来开发服务器和客户端的C库。按照官方(https://libwebsockets.org/)给出的介绍来看,它不仅支持ws,wss还同时支持http与https,可以轻轻松松结合openssl等库来实现ssl加密。OK,本文将介绍如何下载使用功能这么强大的库。
下载
git clone https://github.com/warmcat/libwebsockets.git
编译
为了可以进行多平台编译,websockets项目采用CMake作为编译工具,所以如果机器上没有CMake需要去安装CMa...
libwebsockets, 开源, 网络编程阅读全文