summaryrefslogtreecommitdiffstats
path: root/doc/src/snippets/code/src_network_access_qnetworkdiskcache.cpp
blob: 51f27dfb23548ce24ca65cc5560e524f3a0aa8c3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//! [0]
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
QNetworkDiskCache *diskCache = new QNetworkDiskCache(this);
diskCache->setCacheDirectory("cacheDir");
manager->setCache(diskCache);
//! [0]

//! [1]
// do a normal request (preferred from network, as this is the default)
QNetworkRequest request(QUrl(QString("http://qt.nokia.com")));
manager->get(request);

// do a request preferred from cache
QNetworkRequest request2(QUrl(QString("http://qt.nokia.com")));
request2.setAttribute(QNetworkRequest::CacheLoadControlAttribute, QNetworkRequest::PreferCache);
manager->get(request2);
//! [1]

//! [2]
void replyFinished(QNetworkReply *reply) {
    QVariant fromCache = reply->attribute(QNetworkRequest::SourceIsFromCacheAttribute);
    qDebug() << "page from cache?" << fromCache.toBool();
}
//! [2]