fix(pwa): SW не вмешивается в /hubs/* — SignalR negotiate сломался
Some checks are pending
Some checks are pending
SignalR через web sockets/long-poll стримит данные, его нельзя кешировать. В пред-версии SW не интерсептировал POST, но GET-fetch для negotiate проходил через SW pipeline и валился TypeError'ом. Фикс: явный return на /hubs/* перед всеми стратегиями. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
76a175f491
commit
6f9dd11b0a
|
|
@ -38,6 +38,9 @@ self.addEventListener('fetch', (event) => {
|
||||||
const req = event.request;
|
const req = event.request;
|
||||||
if (req.method !== 'GET') return; // не вмешиваемся в мутации
|
if (req.method !== 'GET') return; // не вмешиваемся в мутации
|
||||||
const url = new URL(req.url);
|
const url = new URL(req.url);
|
||||||
|
// SignalR-хаб (/hubs/*): long-poll / WebSocket-handshake, через cache не
|
||||||
|
// обходится — SW не вмешивается.
|
||||||
|
if (url.pathname.startsWith('/hubs/')) return;
|
||||||
|
|
||||||
// Навигация по приложению — SPA shell.
|
// Навигация по приложению — SPA shell.
|
||||||
if (req.mode === 'navigate') {
|
if (req.mode === 'navigate') {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue