如何解决带有 Windows 身份验证的 PWA
在高层次上,我有一个带有 React 前端和 .netcore 后端的 PWA。我使用 Service Worker 来实现缓存和离线功能,并结合工作箱插件来实现一些预缓存功能。
该应用程序使用 Windows 身份验证。如果它不是 PWA 应用程序,它可以正常工作。 PWA 应用程序第一次启动时它也能正常工作,我会收到用户名、密码登录弹出窗口。
然而,从第二次访问该应用程序开始,它不会显示登录弹出窗口,该应用程序无法从后端提取数据,因为它未经身份验证。一种奇怪的行为是,如果我打开 Chrome Dev Tools(按 F12),那么登录弹出窗口会立即显示。
我认为它与缓存相关,并且服务工作者以某种方式干扰了服务器端身份验证工作流程。也许是因为索引页是由工作箱预缓存插件缓存的,并且它没有使用 'credentials': 'include'
的 fetch 标头缓存?我尝试将 fetch 选项添加到其他 api 路由,这些路由由工作箱插件 RegisterRoute 缓存。但是我没有找到将它添加到 precacheAndRoute(self.__WB__MANIFEST)
的方法。想知道是不是这个问题。但我也不确定为什么打开开发工具会触发弹出窗口显示。
感谢任何输入。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。