由于开发团队引入了几个错误,最新版本的Safari似乎不能很好地与第三方网络应用程序兼容。 根据The Register的一份报告,IndexedDB JavaScript API 在 Apple 的Web 浏览器版本 14.1.1(适用于 macOS)和 11.4(iOS 14.6.)上不再正常运行。
Apple 的 WebKit 团队于 6 月 2 日首次报告了该错误,称该错误出现在应用程序首次尝试使用 IndexedDB NoSQL 管理器存储数据时。在 100% 的情况下,第一次尝试失败,而重新加载页面或 Web 应用程序时,会立即(尽管是暂时的)解决问题。
如果 Apple 对存储 API 和浏览器渲染引擎的政策不像现在那么严格,那么这可能不是什么大问题。这家计算巨头只推荐了两种存储 API——一种是 IndexedDB Java Script API(也是最受欢迎的一种,根据 The Register 的说法),另一种是 Cache Storage API,严重缩小了可用选项的范围。
还有浏览器渲染引擎的问题——因为 Apple 要求所有 iOS 浏览器都基于 WebKit,而不是其他任何东西。
沮丧的开发人员
所有这些都让开发人员感到沮丧。Socket 创始人在 Twitter 上抱怨,称这个错误“非常可怕”。他说:“在 macOS 和 iOS 上构建可靠的网站真的很难,而且会出现像这样的 showstopper 错误。” “这应该被基本的单元测试发现了。”
在接受 The Register 采访时,软件开发商 Matt Mastracci 表示,苹果对采用新标准的态度“慢得令人失望”。
“在某些时候,Safari 上的开发人员体验是一流的,但他们陷入了与微软垄断桌面浏览器时相同的陷阱,”他补充道。
苹果是否保持这种“垄断”可能取决于监管机构,因为该公司的规则目前正在受到各地立法者的调查。还有 Epic Game 对 Apple 提起的反垄断诉讼,该诉讼应该很快就会结案,这可能会影响 Apple 处理其浏览器政策的方式。
苹果尚未对发现的漏洞发表评论。