Вы можете обратиться к QNetworkCookieJar
Функция виртуального члена bool CookieHandler::setCookiesFromUrl (const QList<QNetworkCookie> & cookieList, const QUrl & url)
может использоваться для сохранения файлов cookie в собственном постоянном хранилище.
Например,
bool CookieHandler::setCookiesFromUrl (const QList<QNetworkCookie> & cookieList, const QUrl & url) {
foreach(QNetworkCookie i, cookieList) {
// probably don't want to store session cookies
if (!i.isSessionCookie()) {
// save the cookie to own storage format
}
}
return true;
}
функция защищенного члена void QNetworkCookieJar::setAllCookies ( const QList<QNetworkCookie> & cookieList )
используется для восстановления файлов cookie из вашего собственного хранилища в QNetworkCookieJar, поскольку QNetworkCookieJar не реализует постоянное хранение: он только хранит файлы cookie в памяти.
пример кода,
void CookieHandler::setAllCookiestoJar() {
// retrieve cookies from local database
QList<QNetworkCookie> cookieList = this->getCookiesFromLocalDB();
this->setAllCookies(cookieList);
// check if they are correctly loaded
QList<QNetworkCookie> cookieList_tmp = this->allCookies();
foreach(QNetworkCookie i, cookieList_tmp)
qDebug() << i.toRawForm(QNetworkCookie::Full);
}