KamoCRM

Stop /validate e /logout dal montaggio della shell firmata

Fixkamo-internal
Spegnimento
22 agosto 2026 alle ore 21:03 UTC
Autore
kamo
Impegno
83c2790

Un carico di / ha mostrato uno scoppio di 401/403 prima della sessione stabilita — user-info, ui-preferences, by-department, chat/nonread, timezone/efficace e i biglietti/in attesa-conto tutti fallire insieme, poi tutto funziona. Si legge come una gara di prima pittura sulla home page. Non è uno, e la sessione non è in ritardo: due /api / user-info chiamate 22ms a parte portato un 128-char token e senza gettone a tutti, rispettivamente. Sono due pagine diverse. /validate e /logout non hanno layout del loro proprio, così il layout radice monta l'intero stack provider autenticato sopra loro — contro una sessione che per costruzione non esiste ancora sulla pagina il cui lavoro è quello di crearlo, ed è appena stato distrutto sull'altro. Ogni dei sette "nessun documento d'identità di sessione" scoppia in un pod's log finestra atterra entro secondi di una validazione OTK o di un logout, e nessun altro altrove. Il 403 su biglietti/conto in sospeso è la stessa causa, non un diritto mancante: MediaService risponde a una richiesta senza sessione 403 dove SecurityService risponde 401. Il rumore era la metà visibile. Un errore di login è stato anche l'apertura di un STOMP collegamento, sottoscrizione alla presenza, armamento del catalogo sonoro e mazzo di notifica, e conta inquinante — per essere abbattuto un secondo più tardi da finestra.location.href. Così lo stack si sposta in AuthedChrome, che rende la pagina nuda su un Percorso pre-sessione. Entrambi sono un fisso, full-viewport CaricamentoScreen, quindi né voleva la casella di contenuti nav-offset. SessionBootstrap è issato ABOVE il cancello: /validate scrive il token il cui lettore si installa, quindi deve essere montato su una pagina la shell non è. Cattura dei collegamenti profondi, carico manager e il favico a tema erano già sopra di esso e rimanere lì. L'elenco dei percorsi era di tre copie prima di questo — un ESEMPT PATH privato in ogni dio componente di modo e un controllo in linea in usoManigliatore 401 di UserInfo, che casi speciali gli stessi due percorsi in modo da un previsto 401 non rimbalza un visitatore a /logout da /logout. Un'autorità ora, quindi una terza pagina pre-sessione non può essere aggiunto a due dei tre. corrispondenza esatta, non prefisso: proxy.ts deliberatamente tratta /validate/* come pubblico, e il cancello del cliente non deve allargarsi da solo. Anche qui, entrambi trovati durante il tracciamento della stessa console: - sessioni/support/auto-open 404'd perché il proxy hop non è mai stato scritto. MediaService l'ha sempre servito; mancava solo il percorso successivo e AutoOpenUnreadSupportChats ingoia una risposta non-ok dal design, quindi supporto conversazioni assegnate mentre un agente era via silenziosamente mai aperto. - /favicon.ico 404'd due volte per carico. Il vero favico è a tema e iniettato a runtime; nulla ha risposto alla sonda predefinita del browser. Aggiunto al pubblico / e NON app/, deliberatamente: un app/favicon.ico rende Next emit a <link rel=icon> davanti ai link a tema di DynamicMetaLoader, e TabAttention muta la FIRST icona link che trova — si stempererebbe quello sbagliato e il distintivo svanirebbe. In pubblico / è servito senza un tag, e TabAttention proprio /favicon.ico fallback ora si risolve invece di non riuscire a caricare. Verificato: npx tsc --noEmit, npm test (2706 test, 187 file), npm run build.

Tutte le modifiche

Come quello che vedi la spedizione?

Tutto questo arriva nel vostro spazio di lavoro da solo. Iniziare sul piano gratuito e leggere di nuovo questa pagina in un mese.

Inizia gratis per sempreVisualizza il prezzo