QT- HTTP + JSON(还需完善)

基本内容:

HTTP方法:

HTTP状态码:

HTTP/HTTPS默认端口:


HTTP

基本内容:

主要类:

QNetworkAccessManager

QNetWorkRequest 用于请求

QNetworkReply 接受请求的响应

复制代码
QNetworkRequest request(QUrl("https://...."));//网站请求
manager = new QNetworkAccessManager();
QNetworkReply* reply = manager->get(request);

connect(reply, &QNetworkReply::finished, [this, reply]() {
       if (reply->error() == QNetworkReply::NoError) {

       // 获取并打印 HTTP 状态码
       int resCode = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();

       }

       //200为正常就可以读取网页数据
       if( reply->error() == QNetworkReply::NoError && resCode == 200){

       QByteArray data = reply->readAll();

        }

       reply->deleteLater(); 
});
HTTP方法
  • GET:请求从服务器获取指定资源,不对数据进行更改。
  • HEAD:与 GET 类似,但不获取资源的内容,只获取响应头信息。
  • POST:向服务器发送数据以创建新资源。
  • PUT:向服务器发送数据更新现有资源,资源不存在则新建。与POST区别为PUT是幂等的。
  • **PATCH:**对资源进行修改。与PUT区别为,PATCH只更改部分数据而不是整个资源。
  • DELETE:请求服务器删除指定的资源。
HTTP状态码
  • 1xx(信息性状态码):表示接收的请求正在处理。
  • 2xx(成功状态码):表示请求正常处理完毕。
  • 3xx(重定向状态码):需要后续操作才能完成这一请求。
  • 4xx(客户端错误状态码):表示请求包含语法错误或无法完成。
  • 5xx(服务器错误状态码):服务器在处理请求的过程中发生了错误。

如200表示成功,404表示资源未找到。

HTTP/HTTPS默认端口:

HTTP 的 URL 是由 http:// 起始与默认使用端口 80 ,而 HTTPS 的 URL 则是由 https:// 起始与默认使用端口443

JSON:

QJsonDocument:读取json数据;将json数据转化为字符串或字符数组

QJsonObject:表示JSON对象,键值对的集合

QJsonArray:表示JSON数组

QJsonValue:表示JSON值

值有 6 种基本数据类型:

  • bool(QJsonValue::Bool)
  • double(QJsonValue::Double)
  • string(QJsonValue::String)
  • array(QJsonValue::Array)
  • object(QJsonValue::Object)
  • null(QJsonValue::Null)

分[ ] ,{ }

相关推荐
rfidunion17 小时前
QT5.7.0编译移植
开发语言·qt
微露清风17 小时前
系统性学习C++-第十八讲-封装红黑树实现myset与mymap
java·c++·学习
hqwest17 小时前
码上通QT实战08--导航按钮切换界面
开发语言·qt·slot·信号与槽·connect·signals·emit
CSARImage18 小时前
C++读取exe程序标准输出
c++
一只小bit18 小时前
Qt 常用控件详解:按钮类 / 显示类 / 输入类属性、信号与实战示例
前端·c++·qt·gui
一条大祥脚18 小时前
26.1.9 轮廓线dp 状压最短路 构造
数据结构·c++·算法
项目題供诗19 小时前
C语言基础(一)
c++
@areok@19 小时前
C++opencv图片(mat)传入C#bitmap图片
开发语言·c++·opencv
鸽芷咕19 小时前
【2025年度总结】时光知味,三载同行:落笔皆是沉淀,前行自有光芒
linux·c++·人工智能·2025年度总结
羑悻的小杀马特20 小时前
指尖敲代码,笔尖写成长:2025年度总结与那些没说出口的碎碎念
linux·c++·博客之星·2025年度总结