libevent 实现httpserver 终极版C/C++

最近要用C++实现哥httpserver,之前探索了很多个http的库。

1. 我之前最习惯用httplib-cpp

       github.comicon-default.png?t=N176https://github.com/yhirose/cpp-httplib        

但是它要求gcc-g++版本要大于4.8。然后我用了6.1.0之后,我的其他库比如mysql glog之后怎么都链接不上。换了系统,换了gcc-g++版本还是不行,可能时版本跨度大吧。结果新编译了glog也不行。懒得折腾了。

2. 后来我用的是workflow,还有它的wfrest。

GitHub - wfrest/wfrest: C++ Web Framework REST API

但是略微麻烦。好像要求的gcc-g++版本也是很高的。没办法,我这边用的还是4.8.1或者4.8.5,放弃了

3. 后来我用的是libcurl

这个是比较经典牛逼的。但是我没找到它写httpserver的例子。

4. 最后我用的是libevent .

libeventicon-default.png?t=N176https://libevent.org/这个还是比较屌的。

然后我主要参考的是:

基于libevent的http服务器实现 - 知乎 (zhihu.com)

Linux使用evhttp实现一个简单的HttpServer_hpuzsk的博客-CSDN博客_evhttp_add_header(req->output_headers,

注意下面,要获取rep->input_buffer 里的内容的时候,不知直接用,的获取一下长度。然后把它拷贝出来。那样,拷贝出来的才是真正的body 或者叫数据载荷。否则那个inputbuffer里有好多的东西。会干扰你的工作。

libevent 实现httpserver 终极版C/C++_第1张图片

 

你可能感兴趣的:(http,c++,开发语言,libevent)