CORS tester
Indica l'URL che stai chiamando e l'origine da cui lo chiami. Facciamo la richiesta dal nostro server e ti diciamo quale intestazione Access-Control manca o è sbagliata.
La richiesta che vuoi fare
Questo strumento gira sui nostri server. Facciamo la richiesta da un indirizzo pubblico e ti mostriamo le intestazioni tornate indietro, e non inviamo mai i tuoi cookie né un corpo.
Che cos'è CORS e che cos'è un preflight
Un browser non lascia che un'origine legga la risposta di un'altra a meno che la seconda non lo consenta. Lo consente con Access-Control-Allow-Origin nella risposta. Per tutto ciò che va oltre un semplice GET o POST con intestazioni ordinarie, il browser chiede prima con una richiesta OPTIONS chiamata preflight, e invia la richiesta vera solo se la risposta ammette il metodo e le intestazioni che sta per usare.
Come leggere il verdetto
Ogni riga è un'intestazione che il browser guarda, con accanto il valore tornato indietro. Una riga segnata come fallita è un motivo per cui la richiesta viene bloccata, e il messaggio in alto nomina il primo, perché è quello da sistemare per primo. Le righe segnate come informazione da sole non cambiano nulla. Sotto ci sono la richiesta esatta che abbiamo inviato e le intestazioni tornate indietro, così puoi passare l'intero scambio a chi gestisce il server.
Quale intestazione risolve quale errore
Access-Control-Allow-Origin è la prima da inviare, e deve nominare la tua origine esattamente, schema e porta compresi, oppure essere un asterisco. Access-Control-Allow-Methods e Access-Control-Allow-Headers contano solo sul preflight, e ciascuna deve elencare quello che il browser ha chiesto. Access-Control-Allow-Credentials deve essere la stringa true prima che partano i cookie, e non si combina con un'origine a asterisco. Access-Control-Expose-Headers è ciò che permette a JavaScript di leggere qualcosa oltre alla manciata di intestazioni che i browser consegnano di default.
Smetti di indovinare quale intestazione il server non ha inviato
Una richiesta bloccata da fuori sembra sempre uguale, qualunque ne sia la causa. Session Replay registra insieme la richiesta, le intestazioni della risposta e la riga di console, così chi la guarda dopo ha già tutto davanti.