cpp-httplib库是笔者认为的一个比较好用的基于C++的Http服务器组件,与Eigen一样,它也是基于头文件的库,我们只需要引入httplib.h这个头文件进行来就实现所有基于http/https协议的功能,非常适合初学者进行使用。

尽管是头文件,还是可以使用CMake进行构建,便于统一管理,关键脚本如下:

# 配置CMake  
cmake $SourceLocalPath `
    -B "$BuildDir" `
    -G "$Generator" `
    -A x64 `
    -DCMAKE_BUILD_TYPE=RelWithDebInfo `
    -DCMAKE_PREFIX_PATH="$InstallDir" `
    -DCMAKE_INSTALL_PREFIX="$InstallDir" `
   
# 构建阶段,指定构建类型
cmake --build $BuildDir --config RelWithDebInfo

# 安装阶段,指定构建类型和安装目标
cmake --build $BuildDir --config RelWithDebInfo --target install

复习一下前面引入依赖库的知识,安装完成后要引入cpp-httplib,在CMakeList.txt中的写法是:

# ...

find_package(httplib REQUIRED) 

# ...

target_link_libraries(${PROJECT_NAME} PRIVATE httplib::httplib)

这是目前CMake比较推荐的基于目标链接的引入依赖库的方式。使用的时候只需要include<httplib.h>即可,不用关心环境不同,路径不一样的问题。