QT分析之网络编程(五)

简介: 今天分析QNetworkAccessManager、QNetworkRequest和QNetworkReply组成的高级抽象API序列。
今天分析QNetworkAccessManager、QNetworkRequest和QNetworkReply组成的高级抽象API序列。在动手之前,把doc中有关QNetworkAccessManager的介绍看了一遍。其使用方法大致是:
QNetworkAccessManager * manager = new QNetworkAccessManager(this);
QNetworkRequest request;
request.setUrl(QUrl("http://www.baidu.com"));
QNetworkReply * reply = manager->get(request);
connect(reply, SIGNAL(readyRead()), this, SLOT(slotReadyRead()));
关键是后面的三行:设定URL、发送并获取响应、读取数据。
在QT自带的例子中也有QNetworkAccessManager的应用:downloadmanager
单步跟踪就用downloadmanager这个例子。
在动手跟踪之前,总结了几个问题:
1、QNetworkAccessManager是更高级的抽象,那么怎么跟QTcpSocket/QUdpSocket联系起来的呢?
2、如果没有跟QTcpSocket联系起来,那么又是怎么跟WSA序列WinAPI联系起来的呢?
3、整个逻辑过程是怎么的呢?
4、获取的(图片或者网页)数据保存在什么地方?
5、跟HTTP或者FTP有关的Cookie、认证等怎么实现的?
6、HTTP的Session相关功能实现了吗?怎么实现的?
目录
相关文章
|
6月前
|
数据采集 数据安全/隐私保护
Haskell网络编程:从数据采集到图片分析
爬虫技术在当今信息时代中发挥着关键作用,用于从互联网上获取数据并进行分析。本文将介绍如何使用Haskell进行网络编程,从数据采集到图片分析,为你提供一个清晰的指南。
Haskell网络编程:从数据采集到图片分析
|
监控 网络协议 NoSQL
不为人知的网络编程(十一):从底层入手,深度分析TCP连接耗时的秘密
TCP的开销到底有多大,能否进行量化。一条TCP连接的建立需要耗时延迟多少,是多少毫秒,还是多少微秒?能不能有一个哪怕是粗略的量化估计?
499 0
不为人知的网络编程(十一):从底层入手,深度分析TCP连接耗时的秘密
|
C++
QT分析之网络编程(四)
前面分析中,一个问题一直没有解决:新生成的SOCKET是什么时候加入WSASelect()的?另外还有一个不是很大的问题,close流程。
1119 0
QT分析之网络编程(八)
话说昨日走到QNetworkReplyImplPrivate::_q_startOperation(),勾引出QNetworkAccessHttpBackend::open(),今日接着欣赏QT之美丽。
635 0
|
API 网络协议 Unix
QT分析之网络编程(二)
前面分析(一)之前没有看QT自带的文档,看了doc之后对QT的网络体系有一个大致的了解: QNatvieSocketEnginePrivate是OS相关的API封装,和QNativeSock...
1083 0
|
缓存 网络安全
QT分析之网络编程(六)
在动手分析前,简单介绍一下HTTP协议。HTTP协议是一种为分布式,合作式,超媒体信息系统。
985 0
|
消息中间件 Windows
QT分析之网络编程(七)
接上面,进一步分析QNetworkAccessManager::createRequest()的实现。
1050 0
|
Windows 开发工具
QT分析之网络编程(一)
首先对Windows下的网络编程总结一下: 如果是服务器,其WinSDK调用分别为: WSAStartup() -> socket() -> htons() / htonl() -> bind() -> listen() -> accept() -...
993 0
|
缓存
QT分析之网络编程(三)
3、读取信息 在QAbstractSocket中,有两个成员是收发数据用的:readData()、writeData() readData()有两种读取方式:有缓冲和无缓冲方式。
851 0
|
1月前
|
网络协议 算法 Java

推荐镜像

更多