如何使用Workbox处理身份验证?

时间:2019-06-15 08:07:06

标签: workbox

如何在SPA中处理身份验证? 注销事件触发重定向循环,因为索引页面已缓存,并且同一页面处理用户身份验证,如果用户未通过身份验证,则重定向到登录页面。

实际注销发生在服务器端,并将其重定向回“ /”,这应将用户重定向至“登录”-如果我将其直接重定向至“登录”页面,则该问题仍然存在,因为如果相同用户转到主URL,重定向循环就会再次发生。

我最好的猜测是在缓存请求之前对其进行处理,并删除Authorization令牌。

我累了:

const removeRequestInformationPlugin = {
    cacheDidUpdate: async ({ url, cacheName }) => {
        // Get the result that was just placed into the cache
        const cache = await caches.open(cacheName);
        const response = await cache.match(url);

        // Re-set the cache without any headers or metadata
        await cache.put(url, response);
    }
};

但是遗憾的是这没有任何区别。 我在想,也许主要的问题是缓存的索引页, 但是如果是这样的话,我该怎么办?

我很好奇如何处理?我很惊讶没有关于此的文档或博客文章。我可以在两天内找到的所有内容都只是超级简单的示例,但在大多数情况下(大部分时间)都需要身份验证的实际应用中并没有实际使用。

我已经尝试解决了2天,因此非常感谢您的帮助。

0 个答案:

没有答案