iOS Safari Private Browsing localStorage and sessionStorage Support?
Solution 1
I don't think there is any specific resource for iOS, but here's Apple's official documentation:
And this StackOverflow question is pretty useful as well:
In general, when solving for sessionStorage
and localStorage
, try actually developing locally with Safari on your phone with Web Inspector open. Good luck :)
Solution 2
Yes, same goes for sessionStorage
and localStorage
.
There is an excellent Gist by Paul Irish explaining the history of the issue:
https://gist.github.com/paulirish/5558557
Best solution if you only need one of them:
function isLocalStorageEnabled() {
try {
var mod = '__storage_test__';
localStorage.setItem(mod, mod);
localStorage.removeItem(mod);
return true;
} catch(e) {
return false;
}
}
Or, to make it work for both, the MDN-recommended solution is more-generic: https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API/Using_the_Web_Storage_API
function storageAvailable(type) {
try {
var storage = window[type];
var x = '__storage_test__';
storage.setItem(x, x);
storage.removeItem(x);
return true;
}
catch(e) {
return false;
}
}
Aaron Brewer
Updated on June 09, 2022Comments
-
Aaron Brewer almost 2 years
I have found a few questions here on StackOverflow addressing specific functionality with iOS Safari Private Browsing and
sessionStorage
andlocalStorage
. But I haven't been able to find a definitive resource denoting the support that iOS Safari has forsessionStorage
andlocalStorage
when Private Browsing.What support is there for this or is there any specific resource from Apple denoting this functionality? The general consensus is that
localStorage
is not at all supported without a polyfill, does the same goes forsessionStorage
?Thank you so much!