繁体   English   中英

JS service-worker 和缓存存储 API 和 http 302 - 如何缓存重定向?

[英]JS service-worker and cache storage API with http 302 - how to cache the redirect?

我有一个网页,通过 Tomcat 的 https 提供服务,根据示例使用 serviceworker 获取资源并将其存储在缓存中。 如果 Tomcat 未运行,则从缓存存储提供页面 - 到目前为止一切顺利。
我的 Tomcat 配置包含将 http 重定向到 https 的 redirectPort 属性。 我遇到的问题:当 Tomcat 未运行并且通过 http 访问我的网页时,浏览器显示:连接被拒绝,因为 http 302 重定向未存储在缓存中。 我怎么能做到这一点?

不幸的是,服务人员需要 https 以确保安全,因此您不能让服务人员拦截 http 请求。

如果您想强制浏览器访问您在 https 中的页面,您可以启用 HSTS:

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security

可以在浏览器中预加载 HSTS 列表,使其可以脱机工作。 但是请注意,启用 HSTS 时需要小心,因为如果您犯了一个错误,可能很难纠正。

或者,浏览器正在缓慢地默认加载 https,除非用户明确键入 http。 例如:

https://blog.chromium.org/2021/03/a-safer-default-for-navigation-https.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM