gpt4 book ai didi

javascript - Service Worker 失败 - RedirectMode 不是 "follow"时的重定向响应

转载 作者:搜寻专家 更新时间:2023-11-01 04:34:51 24 4
gpt4 key购买 nike

浏览器:Firefox 58.0.2(64 位)

我正在尝试写一个 very simple service worker按照指南缓存离线模式的内容 herehere .

当我第一次加载页面时,Service Worker 已正确安装。我可以通过查看 about:debugging#workers 来确认它正在运行。

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

The site at https://[my url] has experienced a network protocol violation that cannot be repaired.

The page you are trying to view cannot be shown because an error in the data transmission was detected.

Please contact the website owners to inform them of this problem.

控制台显示此错误:

Failed to load ‘https://[my url]’. A ServiceWorker passed a redirected Response to FetchEvent.respondWith() while RedirectMode is not ‘follow’.

在 Chrome 中,我得到了这个:

Uncaught (in promise) TypeError: Failed to execute 'fetch' on 'ServiceWorkerGlobalScope': Cannot construct a Request with a Request whose mode is 'navigate' and a non-empty RequestInit.

根据 this thread ,我将 { redirect: "follow"} 参数添加到 fetch() 函数,但无济于事。

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

然而,据我所知,导致问题的是响应,而不是提取,对吗?这是因为我的服务器在提供请求的内容时发出了重定向?

那么我该如何处理 service worker 中的重定向呢?显然会有一些,我仍然想缓存数据。

最佳答案

部分从 https://superuser.com/a/1388762/84988 分离出来

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

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

This is an experimental technology

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

Internet 上有大量报告,来自使用 Firefox 的 Gmail 用户,损坏的内容错误违反网络协议(protocol)等。发现:

关于javascript - Service Worker 失败 - RedirectMode 不是 "follow"时的重定向响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50008332/

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