门户
书籍
教程
论坛
问答
下载
签到
个人空间
帐号
自动登录
找回密码
密码
登录
立即注册
账号
自动登录
找回密码
密码
登录
立即注册
请绘制轨迹完成人机验证
由vaptcha提供技术支持
登录
注册
搜索
搜索
搜索
热搜
qml
quick
串口
输入中文
数据库
arm
百度地图
qt聊天
QT安装
安装
多窗口
中文乱码
聊天
局域网
鼠标
QT
图片
乱码
rs485通讯
多线程
android
多文档编辑器
本版
用户
本版
用户
【HUX】问题互助平台
博客
动态
好友
帖子
收藏
道具
勋章
任务
淘帖
动态
日志
相册
分享
记录
留言板
群组
门户
导读
排行榜
设置
我的收藏
退出
Qt开源社区
›
开放区(网友自由发帖区)
›
项目作品
›
Qt编写的项目作品21-网络请求客户端/服务器 ...
发布主题
返回列表
Qt编写的项目作品21-网络请求客户端/服务器
0
回复
5444
查看
[复制链接]
liudianwu
当前离线
积分
2616
liudianwu
累计签到:7 天
连续签到:1 天
来源:
2020-3-7 13:54:45
显示全部楼层
|
阅读模式
## 一、实现原理
1. http请求就是tcp通信,所以第一步实例化QTcpServer类监听端口,并绑定newConnection信号槽。
2. 一旦有新的连接,交给专门的解包类处理,将对应的数据解包,http请求有特定的头部数据等,比如是否需要保活等参数,将其取出来并解析应用。
3. 收发数据交互其实就是QTcpSocket通信对象的交互,只是收发数据带了对应的头部数据。
4. 回复网页数据只需要将网页的html数据发给请求对象即可。
## 二、功能特点
1. 支持多个客户端连接并发同时处理,100个毫无压力。
2. 可设置http请求是长连接还是短连接,默认长连接。
3. 支持多种回复数据格式,其中包括网页内容、json数据等。
4. 服务端示例中同时包含读取文件回复、读取数据库回复。
5. 支持8种配色方案(暗黑、灰黑、深绿、浅黄、深蓝、深黑、暗蓝、默认)。
6. 客户端可指定请求地址,服务端可指定网卡和端口进行监听。
7. 所有请求和连接都有计数,所有在线请求的IP和端口都显示在表格中。
8. 可以提供一个简易的网页配置服务,包括交互,作为设备的web配置。
9. 可自由拓展增加权限校验等,作为一个http请求服务器。
10. 纯Qt实现,代码框架整洁,注释完整,支持任意Qt版本、任意编译器、任意操作系统。
## 三、效果图
## 四、体验地址
1. 体验地址:[
https://pan.baidu.com/s/1uQsDQO5E5crUBN2J-nPeLQ
](
https://pan.baidu.com/s/1uQsDQO5E5crUBN2J-nPeLQ
) 提取码:1jkp 名称:bin_httpserver.zip
2. 国内站点:[
https://gitee.com/feiyangqingyun
](
https://gitee.com/feiyangqingyun
)
3. 国际站点:[
https://github.com/feiyangqingyun
](
https://github.com/feiyangqingyun
)
4. 个人主页:[
https://blog.csdn.net/feiyangqingyun
](
https://blog.csdn.net/feiyangqingyun
)
5. 知乎主页:[
https://www.zhihu.com/people/feiyangqingyun/
](
https://www.zhihu.com/people/feiyangqingyun/
)
**备注:如果网盘下载不到可以去开源主页下载**
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有帐号?
立即注册
x
回复
使用道具
举报
返回列表
发表新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满)
我知道了