原文:C++实现轻量级极简httpserver和httpclient(提供http和websocket接口) - 踏莎行的博客 - CSDN博客
一般来说,C++的项目多是偏底层,不怎么需要跟http打交道,但有时候又需要在C++后端项目中加入一些简单 http以及websocket接口,比如游戏运营服务器,金融交易监控服务等。
但是传统的实现方法比如采用libcurl,asio等较为重型的框架来做有没有必要,因此,这里采用mongoose这个库来实现基本的httpserver和httpclient功能,非常简单,包含一个h文件,一个cpp文件到工程中就行了,无需编译,无需链接库。
本文实现了一个project,将mongoose中提供的http相关api封装成了httpserver类和httpclient类,方便调用,目录结构如下:
├─common
├─mongoose.h
└─mongoose.c
├─httpclient
├─http_client.h
├─http_client.cpp
└─main.cpp
└─httpserver
└─web
└─index.html
├─http_serv