Ci sono molti vantaggi quando si usa JWT su Cookie su app basate su API e capisco che è possibile memorizzare il token su sessionStorage quando si accede all'app tramite browser. È possibile impostare un intercettore sul codice JS per iniettare il token JWT sull'intestazione di autorizzazione per le richieste GET, a condizione che queste richieste GET vengano eseguite dallo stesso codice che ha autenticato l'utente.JWT: come gestire le richieste GET quando l'utente apre una nuova scheda?
Ma cosa succede quando l'utente viene autenticato, quindi apre una nuova scheda e tenta di accedere a un'area diversa riservata (o anche alla stessa area) dell'app/sito? In questo caso, non vi è alcun intercettore per iniettare il token nell'intestazione Autorizzazione nella nuova scheda. Suppongo che il server riceverà la richiesta GET, cercherà un token JWT nell'intestazione Autorizzazione e non lo troverà, rifiutando la richiesta.
Quando si utilizzano i cookie, vengono sempre inviati dal browser in modo nativo e non è necessario preoccuparsi di nuove schede e autenticazione.
C'è un modo per impostare l'intestazione Autorizzazione globalmente per il dominio sul browser nel momento in cui l'utente si autentica nella prima scheda? Quali sono le solite soluzioni per questa materia, se ce ne sono?
Ho finito per utilizzare un cookie per conservare il JWT, ma è impostato dal client utilizzando https://github.com/js-cookie/js-cookie dopo la prima autenticazione. Il mio codice server controlla il JWT nella richiesta in questo ordine: header, body, cookie. Quindi, ogni volta che l'utente apre una nuova scheda, viene utilizzato il cookie del set locale. Altre richieste in-page iniettano il JWT in un'intestazione. In questo modo, l'operazione è orientata all'API, ricadendo su un cookie nell'ultimo caso. – noderman
"Questo non è un modo standardizzato" Qual è la strada giusta allora? –
presentarlo in un'intestazione Autorizzazione "Autorizzazione: Portatore" –