| 123456789101112131415161718192021222324252627282930313233343536 |
- #ifndef PERSISTENTCOOKIEJAR_H
- #define PERSISTENTCOOKIEJAR_H
- #include <QtNetwork>
- #include <QObject>
- class PersistentCookieJar : public QNetworkCookieJar {
- public:
- PersistentCookieJar(QObject *parent) : QNetworkCookieJar(parent) { load(); }
- ~PersistentCookieJar() { save(); }
- public:
- void save()
- {
- QList<QNetworkCookie> 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
|