#ifndef PERSISTENTCOOKIEJAR_H #define PERSISTENTCOOKIEJAR_H #include #include class PersistentCookieJar : public QNetworkCookieJar { public: PersistentCookieJar(QObject *parent) : QNetworkCookieJar(parent) { load(); } ~PersistentCookieJar() { save(); } public: void save() { QList list = allCookies(); QByteArray data; foreach (QNetworkCookie cookie, list) { if (!cookie.isSessionCookie()) { data.append(cookie.toRawForm()); data.append("\n"); } } QSettings settings; settings.setValue("Cookies",data); } void load() { QSettings settings; QByteArray data = settings.value("Cookies").toByteArray(); setAllCookies(QNetworkCookie::parseCookies(data)); } }; #endif // PERSISTENTCOOKIEJAR_H