iOS服务工作者处理请求的方式与Chrome / FF不同吗?

时间:2018-12-31 10:19:05

标签: ios safari mobile-safari service-worker progressive-web-apps

我正在向现有Web应用程序中添加渐进式Web应用程序功能,但遇到了一个奇怪的情况。在这种情况下,我已经实现了API端点等的一些非常标准的缓存,但是绕过了其他缓存。在我绕过的这些端点之一中,我正在启动/检索仅通过Service Worker的视频流,除了它在iOS Safari(最新)上不起作用,但在各种其他设备上的其他浏览器上也可以正常工作。如果我禁用服务工作者,则在iOS上运行良好。该错误相当难以描述,但是到目前为止,我的研究使我相信可能会出现一些潜在的跨域问题,或者由于某种原因形成了错误的标题。这可能是服务器端的潜在问题,因为我无法访问内容存储库,因此生活有些棘手,因为内容存储库是单独提供给主后端的。此问题仅限于视频格式的GET请求,其他文件类型和常规API调用均按预期工作。

如果有人可以建议我或给我一些有关safari + iOS如何处理此问题的文献/文档,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

您遇到的可能是WebKit- Service worker bug ..尝试使用polifil,例如this one(如果它使您的格式不正确)。

或者可能是因为响应的方式。 Try fetching the byte range以防止Safari拒绝响应处理。

Here is another article解释范围问题。