I tried the method:
QWebSettings* settings = QWebSettings::globalSettings();
settings->setAttribute(QWebSettings::LocalStorageEnabled, true);
auto path = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation);
settings->setOfflineStoragePath(path);
window.localStorage is true(not null or undefined), but when I insert a item into the localStorage:
localStorage.setItem("b","isaac");
alert(localStorage["b"]);
The error is happened, and the error messages in the webkit inspector console are:
QuotaExceededError: DOM Exception 22: An attempt was made to add something to storage that exceeded the quota.
I was raging all day, because it was not working after restart of the app. So I think this will be helpfull for someone:
QWebSettings* settings = QWebSettings::globalSettings();
settings->setAttribute(QWebSettings::LocalStorageEnabled, true);
auto path = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation);
settings->setOfflineStoragePath(path);
settings->enablePersistentStorage(path);
Notice the enablePersistentStorage
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With