gpt4 book ai didi

javascript - 检测/预防隐私浏览引起的Firefox IndexedDB InvalidStateError

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:42:52 25 4
gpt4 key购买 nike

我正在集成一个使用 IndexedDB 的 javascript 库,但是当 Firefox 处于隐私浏览/窗口模式时它会“粗鲁地”失败。该库返回一个 500 内部错误,同时 Firefox 向控制台吐出一个 InvalidStateError。

我想做的是在我实例化这个库之前添加一个检查,如果 IndexedDB 不可用则根本不使用这个库。即某种类型的 try/catch 测试。据我所见,即使有问题的代码在 try/catch 中,Firefox 似乎也会吐出控制台错误(但也许还有办法......)。

我实际上对用户是否处于私有(private)窗口 session 不感兴趣,但这似乎是 Firefox 唯一一次导致此 InvalidStateError。

最佳答案

您已经在 onerror 函数中处理了错误。

这不会明确地告诉您使用是“私下”,但会告诉您您不能使用 indexedDB - 如果需要,您可以从中进行插值 - 即如果它是 FireFox 并且抛出错误那么他们很可能是 In Private - 直到 Mozilla 的人修复它。

var db = window.indexedDB.open('test');
db.onerror = function()
{
console.log("Can't use indexedDB")
}

这仍然会将 InvalidStateError 踢出到控制台,但 js 可以处理后果。

关于javascript - 检测/预防隐私浏览引起的Firefox IndexedDB InvalidStateError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31159316/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com