Sec-Fetch-Dest: image (non è CORS, non è il banner)
Data Pubblicazione: 01/10/2026 | | Sicurezza

Sec-Fetch-Dest: image (non è CORS, non è il banner)

Sec-Fetch-Dest è un header di richiesta. Il browser dice se la risorsa è document, image, script o empty. Non è CORS. Non è il banner cookie.

Il banner cookie non scrive l’header Sec-Fetch-Dest. È un header di richiesta: il browser lo mette da solo, con il prefisso Sec-. Dice al server dove finirà la risorsa: un documento, un’immagine, uno script, una fetch vuota. MDN: non si modifica da JavaScript. Non è CORS. Non è il consenso al marketing.

In breve: fetch metadata request header, solo verso URL potenzialmente fidati (HTTPS). I token coincidono con Request.destination: document, image, script, empty, iframe e gli altri elencati da MDN. Header proibito: il prefisso Sec- lo rende non impostabile dagli script. Non è Sec-Fetch-Mode. Verifica del 1° ottobre 2026 su MDN (header, ultima modifica 28 settembre 2026).

Cosa trovi in questo articolo

  1. Cosa è Sec-Fetch-Dest (e cosa non è CORS)

  2. I token di destinazione

  3. Mode, Site, User: non il banner

  4. Errori da evitare

  5. In sintesi

Cosa è Sec-Fetch-Dest (e cosa non è CORS)

MDN, sulla pagina dell’header Sec-Fetch-Dest, parte da un fatto: indica la destinazione della richiesta. In altre parole, l’iniziatore della fetch originale, dove (e come) i dati scaricati verranno usati. Esempio MDN: una richiesta con destinazione audio dovrebbe chiedere dati audio, non un documento con informazioni sensibili. Incluso solo nelle richieste verso URL potenzialmente fidati. I server, scrive MDN, devono ignorare l’header se contiene un valore diverso dai token elencati.

Non è CORS. CORS, Access-Control-Allow-Origin, è un header di risposta. Sec-Fetch-Dest è un header di richiesta: lo scrive il browser, prima. Non è Sec-Fetch-Mode: Mode dice come è partita la chiamata (navigate, no-cors, cors). Dest dice a che destinazione. Non è Sec-Fetch-Site. Non è il banner cookie. Quattro mestieri, un popup.

MDN, glossario fetch metadata request header: questi header (prefisso Sec-) sono forbidden request header. Non si modificano da JavaScript. Servono a una policy di isolamento delle risorse. Si verifica in Network, sulla richiesta, non sul testo della privacy policy. Questo pezzo sta nel cluster Sicurezza, accanto a Sec-Fetch-Mode e Sec-Fetch-Site.

I token di destinazione

MDN, sintassi. Header di richiesta. I token coincidono, nota MDN, con i valori di Request.destination. Non è CORS-safelisted. Tabella dei mestieri che servono in pagina, non l’elenco enciclopedico.

Token (MDN)Cosa significa, secondo MDN
documentdocumento HTML o XML da navigazione di primo livello iniziata dall’utente (click su un link)
imageimmagine: tag immagine, SVG, CSS background-image, cursor, list-style-image
scriptscript: tag script o WorkerGlobalScope.importScripts()
emptystringa vuota, per destinazioni senza token proprio: fetch(), sendBeacon, EventSource, XMLHttpRequest, WebSocket
iframeiframe
stylefoglio di stile: link rel=stylesheet, CSS @import, import JS type css
fontfont, tipicamente da @font-face
reportreport (esempio MDN: content security policy report)

MDN elenca anche audio, video, object, embed, frame, manifest, worker, sharedworker, serviceworker, audioworklet, paintworklet, json, text, track, xslt, fencedframe, webidentity. Si rileggono sulla pagina dell’header. Esempio MDN: una richiesta cross-site generata da un elemento immagine porta Sec-Fetch-Dest: image. Non è navigate. Non è document. Lo spec è Fetch Metadata Request Headers. Lo mette il browser. Il banner non lo scrive.

Mode, Site, User: non il banner

MDN, stessa famiglia. Sec-Fetch-Mode dice come è partita: navigate, cors, no-cors, same-origin, websocket. Sec-Fetch-Site dice da dove: same-origin, same-site, cross-site, none. Sec-Fetch-User, nell’esempio MDN della navigazione, vale ?1 quando c’è un’attivazione dell’utente. Tre header più uno, una richiesta. Non è CSP. Non è HSTS. Non è Clear-Site-Data. Non è CORP.

MDN, baseline: supporto ampio, disponibile nei browser da marzo 2023. Data di modifica della pagina Sec-Fetch-Dest: 28 settembre 2026. Rilettura: 1° ottobre 2026. Si verifica in Network, sugli header della richiesta, non sul testo «Accetta tutti».

Errori da evitare

  • Impostare Sec-Fetch-Dest da JavaScript o in un tag meta: MDN, forbidden request header.

  • Trattarlo come Sec-Fetch-Mode: Dest dice dove finisce, Mode dice come è partita.

  • Accettare un document su un endpoint pensato per image e chiamarlo «semplice img».

  • Confondere empty con «nessuna richiesta»: è fetch(), XHR, sendBeacon, WebSocket.

  • Verificare l’effetto sulla privacy policy invece che in Network, sulla richiesta.

  • Scambiarlo con CORS: uno è destinazione della richiesta, l’altro è un header di risposta.

In sintesi

Sec-Fetch-Dest è un header di richiesta, in HTTPS, scritto dal browser. I token coincidono con Request.destination: document, image, script, empty, iframe, e gli altri in MDN. Non si imposta da JavaScript. Non è CORS. Non è Mode. Non è il banner. Si verifica in Network. MDN, 1° ottobre 2026.

Domande frequenti

MDN: un fetch metadata request header. Indica la destinazione della richiesta, cioè dove verranno usati i dati. I token coincidono con Request.destination: document, image, script, empty, iframe e gli altri elencati. È un header di richiesta, in contesto sicuro. Non è CORS, non è Sec-Fetch-Mode, non è il banner cookie.
No. MDN: è un forbidden request header, prefisso Sec-. Gli script in pagina non lo modificano. Lo scrive il browser.
No. Dest dice dove finisce la risorsa (image, document, script…). Mode dice come è partita (navigate, no-cors, cors…). Stessa famiglia, due mestieri. Si verificano insieme in Network.
MDN: la destinazione è un’immagine. Esempio: un elemento img, un SVG image, un CSS background-image. Non è una navigazione di documento, non è una fetch() da script.
No. MDN: empty è la stringa vuota, usata per destinazioni senza token proprio. Esempi: fetch(), sendBeacon, EventSource, XMLHttpRequest, WebSocket. La richiesta c’è. Manca solo un nome di destinazione più specifico.

Potrebbe interessarti anche...