如何在Safari私密模式的本地存储中保存

时间:2015-08-19 16:34:03

标签: cookies safari local-storage incognito-mode

我有一个应用程序,可以在本地存储中保存用户名。 它适用于除Safari中的private mode之外的所有浏览器。

有没有办法在Safari私密模式下保存此变量?我尝试过使用cookies,但它也不起作用......

有什么解决方法吗?

1 个答案:

答案 0 :(得分:8)

我实现了一个LocalStorageHandler来检查浏览器是否支持本地存储,如果它不支持,那么我使用Cookie。

这是检查它是否支持本地存储的功能:

localStoreSupport: function ()
{
    var testKey = 'test', storage = window.sessionStorage;
    try
    {
        storage.setItem(testKey, '1');
        storage.removeItem(testKey);
        return true;
    }
    catch (error)
    {
        return false;
    }
}

这就是我处理虚假的方式:

if (this.localStoreSupport())
    {
        localStorage.setItem(name, value);
    }
    else
    {
        document.cookie = name + "=" + encodeURIComponent(value) + expires + "; path=/";
    }

我希望这会对你有所帮助。