Parser Set-Cookie
Set-Cookie Parser
Incolla intestazioni di risposta Set-Cookie su più righe per ispezionare gli attributi e segnalare combinazioni rischiose di SameSite / Secure.
Schede Attributi Cookie
setCookieParser.attr.maxAgeHint
Anteprima JSON
[
{
"index": 0,
"raw": "session=abc123; Path=/; HttpOnly; Secure; SameSite=Lax",
"name": "session",
"value": "abc123",
"decodedValue": "abc123",
"attributes": [
{
"key": "path",
"value": "/"
},
{
"key": "httponly",
"value": null
},
{
"key": "secure",
"value": null
},
{
"key": "samesite",
"value": "Lax"
}
],
"attributeMap": {
"path": "/",
"httponly": true,
"secure": true,
"samesite": "Lax"
},
"warnings": []
},
{
"index": 1,
"raw": "preview=1; Max-Age=600; SameSite=None; Secure",
"name": "preview",
"value": "1",
"decodedValue": "1",
"attributes": [
{
"key": "max-age",
"value": "600"
},
{
"key": "samesite",
"value": "None"
},
{
"key": "secure",
"value": null
}
],
"attributeMap": {
"max-age": "600",
"samesite": "None",
"secure": true
},
"warnings": [
"warn.missingHttpOnly",
"warn.missingPath"
]
}
]Se il browser non accetta i cookie, spesso non è colpa del valore, ma di attributi Set-Cookie errati.
Raccomandazioni correlate
Cos'è il Parser Set-Cookie?
Il Parser Set-Cookie è uno strumento di debug specifico per il contenuto delle intestazioni di risposta HTTP Set-Cookie. Non si limita a dividere il testo in base ai punti e virgola, ma aiuta gli sviluppatori a valutare: la configurazione del cookie del server è corretta, perché il browser non l'ha accettata, quali combinazioni di attributi presentano rischi per la sicurezza o la compatibilità, e se il Set-Cookie è adatto a scenari cross-site, SSO, iframe, cookie di terze parti o di sessione.
A differenza dell'intestazione Cookie nelle richieste, Set-Cookie è un'istruzione di configurazione inviata dal server al browser. Non contiene solo name=value, ma anche attributi come SameSite, Secure, HttpOnly, Path, Domain, Expires, Max-Age e Partitioned. Questi campi determinano direttamente se il browser salva il cookie, quando scade, su quali percorsi e domini è valido e se può essere inviato in richieste cross-site. Molti problemi come la perdita dello stato di accesso, cookie mancanti nelle richieste o malfunzionamenti in scenari cross-origin non dipendono dal valore stesso, ma dalla configurazione degli attributi Set-Cookie.
Il valore di questa pagina sta nell'estrarre questi attributi in modo strutturato dall'intestazione di risposta originale ed eseguire controlli statici basati sulle regole reali dei browser. Ad esempio: se SameSite=None manca di Secure, se Partitioned è abbinato a Secure, se il prefisso __Host- ha un Domain errato, se Max-Age è non valido o uguale a 0, se Expires manca di Max-Age. I browser spesso non mostrano questi problemi come errori di sintassi, ma rifiutano silenziosamente il cookie, quindi un controllo tramite strumento è fondamentale.
Se vuoi solo sapere quali cookie sono presenti nella richiesta corrente, usa invece il Parser HTTP Cookie. Questa pagina è più adatta per scenari di debug di intestazioni di risposta: perché il browser non ha salvato il cookie, ci sono rischi per la sicurezza nella configurazione, la combinazione di attributi cross-site e di sicurezza è corretta.
Casi d'uso
- Localizzare rapidamente problemi di configurazione con SameSite, Secure, HttpOnly, Path o Domain quando il browser rifiuta i cookie
- Verificare se SameSite=None è correttamente combinato con Secure in scenari di accesso di terze parti, SSO, incorporamento iframe o richieste cross-site
- Controllo in batch delle risposte cookie delle API durante audit di sicurezza per HttpOnly/SameSite mancanti o combinazioni di attributi ad alto rischio
- Verificare che i cookie con prefisso __Host-/__Secure- soddisfino le condizioni del browser per evitare rifiuti silenziosi
- Controllare se Partitioned e Secure sono dichiarati contemporaneamente durante il debug di cookie partizionati/CHIPS
- Confrontare le intestazioni di risposta Set-Cookie da ambienti di sviluppo, test e produzione per risolvere problemi di accesso dopo cambi di ambiente
Come utilizzare
- Copia il contenuto delle intestazioni di risposta Set-Cookie (supporto multilinea) da DevTools del browser, strumenti di cattura pacchetti o log del server
- Incollalo nell'area di input; lo strumento rimuove automaticamente il prefisso Set-Cookie: e analizza ogni riga
- Visualizza nomi, valori, valori decodificati URL, schede degli attributi e avvisi per ogni cookie
- Copia l'intestazione originale o visualizza l'anteprima JSON per inviare i risultati al backend o inserirli in issue/script di test
Funzionalità
- Analisi indipendente di più intestazioni Set-Cookie: ogni riga viene mostrata come scheda separata con nome, valore grezzo, valore decodificato URL e attributi
- Controllo automatico di 14 problemi comuni: copre SameSite, Secure, HttpOnly, Path, Domain, Max-Age, Expires, prefissi __Host-/__Secure- e Partitioned
- Scomposizione completa degli attributi: visualizzazione strutturata per SameSite, Secure, HttpOnly, Path, Domain, Expires, Max-Age, Partitioned e altri campi
- Conversione Max-Age leggibile: i secondi vengono automaticamente convertiti in minuti, ore e giorni
- Input multilinea in batch: incolla direttamente intere intestazioni di risposta Set-Cookie da DevTools o strumenti di cattura pacchetti
- Copia intestazione originale e anteprima JSON: utili per inoltrare al backend o creare documenti, issue e casi di test
- Nessun upload locale: sessioni sensibili, token e cookie di accesso vengono analizzati nel browser e non lasciano il tuo dispositivo
Quando usare il Parser Set-Cookie e quando le altre pagine?
Capire la differenza tra "cosa ha impostato il server" e "cosa viene effettivamente inviato nelle richieste" è fondamentale: non confondere le due cose.
| Strumento | Input adatto | Ideale per | Punto di forza |
|---|---|---|---|
| Parser Set-Cookie (questa pagina) | Intestazione di risposta Set-Cookie | Debug di cookie non accettati, cookie cross-site non funzionanti e rischi nella configurazione di sicurezza | Scomposizione completa degli attributi con controllo automatico di 14 errori di configurazione comuni |
| Parser HTTP Cookie | Intestazione di richiesta Cookie, document.cookie | Verificare quali cookie vengono effettivamente inviati nelle richieste, se i valori sono codificati URL e se ci sono nomi duplicati | Più focalizzato sulla scomposizione delle coppie nome-valore nelle intestazioni di richiesta e sull'output standardizzatoApri Parser HTTP Cookie |
| Parser Cookie | Stringhe cookie miste e debug combinato Set-Cookie | Quando non conosci l'origine dei dati o vuoi passare rapidamente dalla modalità Cookie a Set-Cookie in un'unica pagina | Punto di accesso generale per il debug dei cookie, supporta anche l'esportazione in formato file Netscape CookieApri Parser Cookie |
Best Practices
Prima verifica se il problema è nell'impostazione o nell'invio del cookie
Se il browser non salva affatto il cookie, inizia da questa pagina. Se il cookie è già stato salvato ma manca nelle richieste successive, usa anche il Parser HTTP Cookie. Set-Cookie e l'intestazione Cookie delle richieste sono due fasi diverse.
Negli scenari cross-site verifica prima la combinazione di SameSite=None e Secure
L'errore più comune in SSO, accessi di terze parti, incorporamenti iframe e richieste cross-origin è SameSite=None senza Secure. Risolvi prima questo problema, poi controlla la logica del server e le impostazioni del browser.
Per i prefissi __Host-/__Secure- non controllare solo il nome, ma tutte le condizioni
Molti team pensano che aggiungere un prefisso __Host- o __Secure- al nome del cookie basti per renderlo sicuro, ma se Secure, Path=/ o Domain non sono configurati correttamente, il browser rifiuterà comunque il cookie.
Per documentare e riprodurre issue conserva sia l'intestazione originale che la versione JSON
L'intestazione originale è utile per il confronto con backend e sistemisti; la versione JSON può essere inserita in issue, casi di test e script. Conservare entrambe è meglio di un semplice screenshot da DevTools.
Domande frequenti
Qual è la differenza tra il parser Set-Cookie e il parser dell'intestazione Cookie delle richieste?
Il parser Set-Cookie si rivolge alle intestazioni di risposta del server e verifica se il browser accetterà il cookie e se gli attributi sono corretti. Il parser dell'intestazione Cookie delle richieste analizza le richieste inviate dal browser e mostra quali cookie vengono effettivamente inviati. Se stai risolvendo problemi con SameSite, HttpOnly, Secure, Path, Domain, Expires o Max-Age, usa questa pagina.
Parser HTTP CookiePerché il browser non salva il cookie anche se ha ricevuto la risposta?
Questo è esattamente il problema che questo strumento risolve al meglio. Le cause comuni includono SameSite=None senza Secure, cookie Secure impostati su pagine HTTP, violazioni del prefisso __Host-, Partitioned senza Secure, configurazione errata di Path o Domain, Max-Age non valido o uguale a 0 e limitazioni dei cookie di terze parti del browser.
Quali rischi comuni di Set-Cookie controlla lo strumento?
Questa pagina rileva automaticamente 14 problemi frequenti: SameSite=None senza Secure, valore SameSite non valido, Partitioned senza Secure, HttpOnly/Path/SameSite mancanti, prefisso __Host- senza Secure/Path=/ o con Domain errato, prefisso __Secure- senza Secure, Max-Age non valido, Max-Age=0, Domain con punto iniziale ed Expires senza Max-Age.
Perché SameSite=None deve essere sempre combinato con Secure?
I browser moderni richiedono che i cookie cross-site con SameSite=None abbiano anche l'attributo Secure, altrimenti vengono rifiutati. Questo problema è molto comune in accessi di terze parti, SSO, incorporamenti iframe e richieste cross-origin.
Perché i cookie con prefisso __Host- o __Secure- vengono rifiutati dal browser?
__Host- e __Secure- sono prefissi di sicurezza con regole severe. __Host- richiede Secure, Path=/ e nessuna impostazione Domain; __Secure- richiede almeno Secure. Se queste regole vengono violate, il browser ignora il cookie.
Come si interpretano Max-Age ed Expires?
Max-Age indica la durata relativa in secondi e di solito ha priorità su Expires. Expires è un punto temporale assoluto che dipende dall'orologio del client. Molti server impostano solo Expires senza Max-Age, il che può causare interpretazioni errate a causa di differenze di fuso orario o orario di sistema.
Lo strumento è adatto per risolvere problemi con cookie cross-site e di terze parti?
Sì. Che si tratti di accesso di terze parti, SSO, incorporamento iframe, API cross-origin o scenari CHIPS (cookie partizionati), questo strumento ti aiuta a verificare rapidamente se la combinazione di SameSite, Secure e Partitioned è corretta.
I risultati dell'analisi possono essere copiati o esportati?
Sì. Puoi copiare l'intestazione Set-Cookie originale con un clic o visualizzare l'anteprima JSON strutturata per inserire nomi, valori, attributi e avvisi in issue, documenti, script di test o note di debug.
I dati di sessione o token che copio vengono caricati su un server?
No. L'analisi del contenuto Set-Cookie, la decodifica URL, la scomposizione degli attributi e il controllo degli avvisi avvengono completamente localmente nel browser; le intestazioni di risposta sensibili non vengono inviate a nessun server.
Glossario
- Set-Cookie
- Intestazione di risposta HTTP con cui il server indica al browser di salvare un cookie. Una risposta può contenere più intestazioni Set-Cookie, ognuna corrispondente di solito a un cookie.
- SameSite
- Attributo che controlla se i cookie vengono inviati in richieste cross-site. Valori comuni: Strict, Lax, None; None di solito richiede Secure.
- HttpOnly
- Se impostato, JavaScript non può leggere il cookie tramite document.cookie, riducendo il rischio di furto di sessione tramite XSS.
- Secure
- Se impostato, il browser invia il cookie solo su connessioni HTTPS (tranne localhost), proteggendo i cookie sensibili dall'esposizione su HTTP non crittografato.
- Max-Age
- Durata relativa del cookie in secondi. Di solito ha priorità su Expires e dovrebbe essere impostato esplicitamente dal server.
- Expires
- Punto di scadenza assoluto del cookie, dipende dall'orario locale del client. Se usato da solo, il debug è più complesso rispetto a Max-Age.
- Path
- Limita il cookie ai percorsi URL con questo prefisso. Se il Path non corrisponde, il cookie non viene inviato nelle richieste successive anche se è stato salvato.
- Domain
- Limita il cookie a un ambito di dominio. Se non specificato, vale solo per l'host corrente; se specificato, può valere anche per i sottodomini.
- Partitioned (CHIPS)
- Soluzione di archiviazione partizionata per cookie di terze parti, come alternativa dopo che i browser hanno iniziato a limitare i cookie di terze parti. Le implementazioni attuali di solito richiedono Secure.
- Prefissi __Host- / __Secure-
- Prefissi di denominazione per cookie sicuri supportati dai browser con regole severe. In caso di violazione, il browser rifiuta il cookie.
Tabella di confronto delle tre strategie SameSite
Nel debug dei cookie cross-site, verifica prima il comportamento di SameSite e poi se manca Secure.
| Valore SameSite | Navigazione top-level cross-site (GET) | Sottorisorse cross-site (img/iframe/script) | Form POST cross-site | XHR/fetch cross-site | Secure obbligatorio? |
|---|---|---|---|---|---|
| Strict | Non inviare | Non inviare | Non inviare | Non inviare | No |
| Lax (predefinito) | Inviare | Non inviare | Non inviare | Non inviare | No |
| None | Inviare | Inviare | Inviare | Inviare | Secure deve essere impostato |
Tabella dei problemi comuni di debug Set-Cookie
Quando il browser rifiuta silenziosamente i cookie, controlla prima questi punti: è spesso più veloce che esaminare il corpo della risposta.
| Sintomo | Causa probabile | Controlla prima |
|---|---|---|
| Il browser non salva affatto il cookie | SameSite=None senza Secure, violazioni di prefisso o combinazione di attributi non valida | Controlla gli avvisi e le schede degli attributi in questa pagina |
| Non funziona in scenari cross-site/iframe | SameSite troppo restrittivo, Secure mancante o limitazioni di terze parti | Concentrati su SameSite, Secure, Partitioned |
| Il cookie scade immediatamente dopo essere stato impostato | Max-Age=0, Max-Age non valido, data Expires errata | Prima Max-Age, poi Expires |
| Il cookie __Host-/__Secure- non funziona | Condizioni Secure, Path=/ o Domain non soddisfatte | Verifica se vengono visualizzati avvisi sui prefissi |
| Funziona in sviluppo ma non in produzione | Differenze in HTTPS, Domain, Path, SameSite o intestazioni di risposta del proxy | Copia l'intestazione originale e confronta le risposte Set-Cookie dei diversi ambienti |
Privacy & Security
L'analisi dell'intestazione di risposta Set-Cookie, la decodifica URL, la scomposizione degli attributi e il controllo delle 14 categorie di avvisi avvengono completamente localmente nel browser. Le sessioni, i token e i cookie di accesso incollati non vengono caricati su nessun server.
- Generatore Authorization Header
- Parser Cache-Control
- Content-Disposition Parser
- Generatore CORS Header
- Ispettore CORS
- Generatore CSP
- Generatore di codice cURL
- Controllo Propagazione DNS Globale
- Lookup DNS
- Parser Forwarded Header
- Generatore Hreflang
- Analizzatore HSTS
- Parser Cookie HTTP
- Verifica Header HTTP
- Tester Richieste HTTP
- Ricerca codici di stato HTTP
- Ricerca IP
- Convertitore IPv4
- IPv4 Range Expander
- Cassetta degli attrezzi IPv6
- Link Header Parser
- MX Lookup
- Port Checker
- URL Parameter Builder
- Rate Limit Header Parser
- Controlla Catena di Reindirizzamento
- Generatore Robots.txt
- Robots.txt Inspector
- Security Headers Checker
- Generatore Security.txt
- Parser Set-Cookie
- Site Network Audit
- Generatore Sitemap
- Sitemap Inspector
- Verificatore Certificati SSL
- Calcolatore di Sottoreti
- Analizzatore URL
- Parser User-Agent
- Generatore di Link UTM
- Test WebSocket
- Qual è il Mio IP
- Ricerca WHOIS