【发布时间】:2017-04-13 21:34:08
【问题描述】:
我在 iPhone 的 safari 上遇到此错误,在此处执行 localStorage.setItem('user',some string):
错误:已超出配额。
setItem@[本机代码]
它不是私人模式!还有哪些情况会导致 localStorage 不起作用?
【问题讨论】:
标签: javascript safari local-storage ios10
我在 iPhone 的 safari 上遇到此错误,在此处执行 localStorage.setItem('user',some string):
错误:已超出配额。
setItem@[本机代码]
它不是私人模式!还有哪些情况会导致 localStorage 不起作用?
【问题讨论】:
标签: javascript safari local-storage ios10
我创建了这个类来帮助绕过隐私浏览。但是,当您刷新浏览器时,存储空间会被吹走。
const data = {};
let hasLocalStorage = false;
if (localStorage) {
try {
const x = 'storageTest';
localStorage.setItem(x, x);
localStorage.removeItem(x);
hasLocalStorage = true;
} catch (e) {
hasLocalStorage = false;
}
}
class StorageUtilities {
setItem(key, value) {
if (hasLocalStorage) {
localStorage.setItem(key, value);
} else {
data[key] = value;
}
}
getItem(key) {
if (hasLocalStorage) {
return localStorage.getItem(key);
}
return data[key];
}
removeItem(key) {
if (hasLocalStorage) {
localStorage.removeItem(key);
} else {
data[key] = null;
}
}
}
const storageUtilities = new StorageUtilities();
export default storageUtilities;
【讨论】:
其实是私人模式。看起来它在新 iphone 上默认启用。
【讨论】: