服务工作者失败 - 重定向响应,而RedirectMode不是"关注"

Rya*_*ggs 5 javascript redirect offline-caching service-worker

浏览器:Firefox 58.0.2(64位)

我正在尝试编写一个非常简单的服务工作者来缓存离线模式的内容,遵循此处此处的指导.

当我第一次加载页面时,服务工作者已正确安装.我可以通过查看:debugging#workers来确认它正在运行.

但是,此时如果我尝试刷新页面(无论是在线还是离线),或导航到站点中的任何其他页面,我会收到以下错误:

在该网站的https:// [我的 URL]经历了一个网络协议违反无法修复.

您尝试查看的页面无法显示,因为检测到数据传输中的错误.

请与网站所有者联系,告知他们这个问题.

控制台显示此错误:

无法加载" https:// [my url]".ServiceWorker将重定向的响应传递给FetchEvent.respondWith(),而RedirectMode不是"跟随".

在Chrome中,我得到了这个:

未捕获(承诺)TypeError:无法在'ServiceWorkerGlobalScope'上执行'fetch':无法构造具有模式为'navigate'的请求和非空RequestInit的请求.

根据这个线程,我将{redirect:"follow"}参数添加到fetch()函数中,但无济于事.

(是的,我在进行更改后从about:debugging页面手动卸载了Service Worker.)

然而,根据我的理解,这是造成问题的反应,而不是取材,对吗?这是因为我的服务器在提供请求的内容时发出重定向?

那么我该如何处理服务工作者的重定向呢?显然会有一些,我仍然想要缓存数据.

Gra*_*rin 1

部分脱离https://superuser.com/a/1388762/84988

\n\n

我有时会在 FreeBSD-CURRENT 上使用 Waterfox 56.2.6 时遇到 Gmail 问题。(Waterfox 56 基于 Firefox 56.0.2。)有时只需重新加载页面;有时在恢复的会话中加载页面时;等等。

\n\n

FetchEvent.respondWith() | FetchEvent.respondWith() | MDN以警报开头:

\n\n
\n

这是一项实验技术\xe2\x80\xa6

\n
\n\n

乍一看,https://bugzilla.mozilla.org/buglist.cgi?quicksearch= FetchEvent.respondWith%28%29 发现的两个 bug FetchEvent.respondWith%28%29 发现的两个 bug是无关的。

\n\n

互联网上有大量来自 Gmail 和 Firefox 用户的报告,内容涉及损坏的内容错误网络协议违规等。发现:

\n\n\n