indexedDB 可以在 Safari 的 iframe 中工作吗?

Can indexedDB work inside an iframe in Safari?

我有一个包含 iframe 的应用程序,我可以在其中加载外部网站。

本网站使用 indexedDB 数据库来存储一些值。在 Chrome、Firefox 中一切正常...但是当我尝试使用 Safari 打开应用程序时发现了这个错误:

有人能告诉我一些关于 Safari 的情况吗?

此致

截至目前,Safari 不支持在嵌入 iframe 时使用 indexeddb。 Apple 说这是因为 "security" :-(

编辑:这仅适用于跨源。如果这两个 url 同源,则 indexeddb 的使用按预期工作。

如果您只在内部使用它,也许您可​​以:转到 Safari,启用开发人员工具(首选项 > 高级),然后开发 > 禁用跨源限制。 但这只有在内部使用时才可行。

当前状态一团糟。 在 iframe 场景中,您只能使用 localstorage(或 sessionstorage),但这只能为您提供几 mb 的存储空间。

或者走老路,把所有东西都存储在服务器上。