Tufao 介绍
Tufao 是在Qt 之上构建的 C++异步Web框架。项目地址来源于github(https://github.com/vinipsmaker/tufao)利用Qt 的对象通信系统(信号与槽机制),可以快速的迁移到Qt中。具有以下特点:
- 高性能独立服务器
- 跨平台支持
- HTTP 支持
- HTTPS 支持
- 灵活请求路由器
- 静态文件服务器
- 灵活安全的会话支持
- 支持QtCreator 可以快速创建新的应用程序
- 超时支持
- C++ 11
安装部署
目前官网最新版本在1.4.5。注意从1.4.0开始,tufao引入第三方库使用boost.http进行解析。故下载最新源码前需提前安装配置boost库.本文以1.3.10源码为例,介绍如何安装部署tufao到自己的项目中。最新版本编译及解决方法下篇文章介绍。
准备环境
windwos 10 64位Qt 5.8.0 MinGw 32
下载源码
访问如图所示github链接,找到如图所示1.3.10版本源码,下载下来。也可以从后台回复 tufao-1.3.10 下载
下载CMake
安装Cmake,并设置环境变量。官网地址 https://cmake.org/download/
设置好环境变量
- C:\Qt\Qt5.8.0\5.8\mingw53_32\bin
- C:\Qt\Qt5.8.0\Tools\mingw530_32\bin
- C:\Program Files\CMake\bin
配置Cmake编译环境
- 解压tufao-1.3.10 源码,并在里面创建一个build目录,目录下创建debug/release目录
- 配置Cmake
如果报错,请检查如下配置4
- tufao编译配置
- 编译类型
- 安装路径
- 点击Configure 和 Generate
编译和安装tufao
- 打开Qt 5.8 for Desktop (MinGw 5.3.0 32 bit)
- cd 先前配置的debug目录下。(cd C:\OpenSource\tufao-1.3.10\build\debug)
- mingw32-make
- mingw32-make install
安装过程注意做了两件事:将include 和 lib复制到 out目录下;将 C:\OpenSource\tufao-1.3.10\build\debug\pkg\tufao1.prf 复制到C:/Qt/Qt5.8.0/5.8/mingw53_32/mkspecs/features/tufao1.prf 下;可以看到prf里面自动帮我们链接的tufao1库。
/*tufao1.prf*/ QT += network DEFINES += TUFAO_VERSION_MAJOR=1 INCLUDEPATH += "C:/OpenSource/tufao-1.3.10/build/out/include/tufao-1" win32 { CONFIG(debug, debug|release): LIBS += -L"C:/OpenSource/tufao-1.3.10/build/out/lib"-ltufao1d CONFIG(release, debug|release): LIBS += -L"C:/OpenSource/tufao-1.3.10/build/out/lib"-ltufao1 } else{ LIBS += -L"C:/OpenSource/tufao-1.3.10/build/out/lib"-ltufao1 }
使用
只需要在pro文件加入 CONFIG+= C++11 TUFAO1即可
测试
打开 C:\OpenSource\tufao-1.3.10\examples\qmake\hello-world 工程,运行应用程序,并使用postman发送get请求。测试结果如下。
最后
感谢 vinipsmaker 提供的开源库,本文介绍内容仅作学习参考,不作它图,如需相关源码请前往原作者github取,或者后台回复 tufao-1.3.10 下载相关配置环境。