Qt扫盲- QNetworkRequest理论总结

QNetworkRequest理论总结

一、概述

QNetworkRequest 类是网络访问API的一部分,是一个工具类,它包含了通过网络发送请求所需的信息。它包含一个URL和一些可用于修改请求的辅助信息。这个URL一般最匹配的就是 Http协议的,在构造url的时候最常用的其实就是设置头,设置一个路径。这个QNetworkRequest对象一般其实就是一个属性配置类,会被 QNetworkAccessManager 发起请求的。有过 python、js发起http请求的经验,其实就明白啦。

URL 的话其实就是一系列网络协议的集合

稍微了解一些 WEB 编程的基础就知道类似下面的图
在这里插入图片描述

如果不太清楚,可以参考下面博主写的博客看看
URL 格式
http协议概述

二、注意要点

有了这些协议的基础要点,那我们就知道,在组装一个URL 的时候,需要指定一个协议和路径,同时还要设置一些 http请求的头部属性,就是通过 setHeader(QNetworkRequest::KnownHeaders header, const QVariant &value) 来实现。
也就是 将已知报头的值设置为value,覆盖之前设置的任何报头。该操作还设置了等效的原始HTTP头。也即是可以重复设置值,这个如果有多个报头的键,就可以多次设置的。

也可以用 setRawHeader(const QByteArray &headerName, const QByteArray &headerValue) 完成,基本一样的。

最经典的使用如下:

QNetworkRequest request;

//设置url
request.setUrl(QUrl("http://qt-project.org"));

// 设置头
request.setRawHeader("User-Agent", "MyOwnBrowser 1.0");
request.setRawHeader(QByteArray("Last-Modified"), QByteArray("Sun, 06 Nov 1994 08:49:37 GMT"));

一般我们在发起请求的时候我们还会传递一些参数,参数的话一般就是通过,QHttpPart, QHttpMultiPart来组装参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

太阳风暴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值