本文整理汇总了C++中qnetworkcachemetadata::RawHeaderList::push_back方法的典型用法代码示例。如果您正苦于以下问题:C++ RawHeaderList::push_back方法的具体用法?C++ RawHeaderList::push_back怎么用?C++ RawHeaderList::push_back使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类qnetworkcachemetadata::RawHeaderList
的用法示例。
在下文中一共展示了RawHeaderList::push_back方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: prepare
QIODevice *TabCache::prepare(const QNetworkCacheMetaData &metaData) {
QLOG_DEBUG() << "TabCache::prepare";
QNetworkCacheMetaData local{metaData};
//Default policy based on received HTTP headers is to not save to disk.
//Override here, and set proper expiration so items are put in cache
//(setSaveToDisk) and valid when retrieved using metaData call -
//(setExpirationDate)
local.setSaveToDisk(true);
// Need to set some reasonable length of time in which our cache entries
// will expire. It's possible we'll want to allow users to customize this.
local.setExpirationDate(QDateTime().currentDateTime().addDays(kCacheExpireInDays));
QNetworkCacheMetaData::RawHeaderList headers;
for (auto &header: local.rawHeaders()) {
// Modify Cache-Control headers - basically need to drop 'no-store'
// as we want to store to cache and 'must-revalidate' as we don't have
// ETag or last modified headers available to attempt re-validation. To
// be on the safe side though just drop Cache-Control and Pragma headers.
if (header.first == "Cache-Control") continue;
if (header.first == "Pragma") continue;
headers.push_back(header);
}
local.setRawHeaders(headers);
return QNetworkDiskCache::prepare(local);
}