$.ajax error: Response to preflight request doesn't pass access control check: It does not have HTTP ok status (405) – jQuery AJAX_CORS_PREFLIGHT_FAIL

AJAX_CORS_PREFLIGHT_FAIL

Quando si inviano header HTTP personalizzati (es. 'headers: { "Authorization": ... }') o 'contentType: application/json', il browser invia preventivamente una richiesta HTTP OPTIONS; se il server risponde con errore 404 o 405, la chiamata jQuery fallisce immediatamente.

Cosa significa questo errore?

Quando si inviano header HTTP personalizzati (es. 'headers: { "Authorization": ... }') o 'contentType: application/json', il browser invia preventivamente una richiesta HTTP OPTIONS; se il server risponde con errore 404 o 405, la chiamata jQuery fallisce immediatamente.

Messaggio originale

$.ajax error: Response to preflight request doesn't pass access control check: It does not have HTTP ok status (405)

Contesto e parole chiave

Alias

  • Response to preflight request doesn't pass access control check jQuery ajax

Messaggi alternativi

  • risposta alla richiesta preflight OPTIONS fallita con status non valido

Prodotti

  • jQuery Library (v1.x, v2.x, v3.x, v4.x)

Piattaforme

  • Linux
  • macOS
  • Qualsiasi Browser Web
  • Windows

Parole chiave

  • ajax
  • Ajax e Chiamate HTTP
  • AJAX_CORS_PREFLIGHT_FAIL
  • errore-jquery-ajax-cors-preflight-options-failed
  • javascript
  • jquery
  • jquery.ajax.cors-preflight-options-failed

Cause possibili

Origine del problema per Errore jQuery $.ajax: Richiesta Preflight OPTIONS Fallita (CORS)

Quando si inviano header HTTP personalizzati (es. 'headers: { "Authorization": ... }') o 'contentType: application/json', il browser invia preventivamente una richiesta HTTP OPTIONS; se il server risponde con errore 404 o 405, la chiamata jQuery fallisce immediatamente.

molto comune

Diagnosi

Diagnostica DOM o AJAX per Errore jQuery $.ajax: Richiesta Preflight OPTIONS Fallita (CORS)

Verificare lo stato della variabile window.jQuery nella Console DevTools (F12) e ispezionare il tab Network per le chiamate AJAX.

Come leggere il risultato. Restituisce la versione attiva di jQuery e il numero effettivo di nodi DOM corrispondenti al selettore.

terminal
console.log(jQuery.fn.jquery); console.log($('.my-element').length);

Risoluzione

Risoluzione per Errore jQuery $.ajax: Richiesta Preflight OPTIONS Fallita (CORS)

Difficoltà: facileRischio: basso

Applicare la correzione al codice o alla configurazione degli script jQuery nel frontend.

  1. Ispezionare la riga segnalata nella console del browser (F12)
  2. Correggere il selettore CSS, la chiamata AJAX, o l'ordine di inclusione dei file script
  3. Ricaricare la pagina con cache disattivata (Ctrl+F5) per verificare l'esito

Domande frequenti

Come risolvere l'errore Errore jQuery $.ajax: Richiesta Preflight OPTIONS Fallita (CORS) in jQuery?

Quando si inviano header HTTP personalizzati (es. 'headers: { "Authorization": ... }') o 'contentType: application/json', il browser invia preventivamente una richiesta HTTP OPTIONS; se il server risponde con errore 404 o 405, la chiamata jQuery fallisce immediatamente.

Approfondimenti

Schede correlate