jQuery’s jquery-1.10.2.min.map sta triggersndo un 404 (non trovato)

Visualizzo messaggi di errore relativi a un file, min.map , non trovati:

GET jquery-1.10.2.min.map sta triggersndo un 404 (non trovato)


Immagine dello schermo

inserisci la descrizione dell'immagine qui

Da dove viene questo?

Se Chrome DevTools sta segnalando un 404 per un file .map (forse jquery-1.10.2.min.map , jquery.min.map o jquery-2.0.3.min.map , ma può succedere con qualsiasi cosa) la prima cosa da sapere questo è richiesto solo quando si utilizza DevTools. I tuoi utenti non colpiranno questo 404.

Ora puoi risolvere questo problema o disabilitare la funzionalità di sourcemap.

Correzione: ottieni i file

Successivamente, è una soluzione semplice. Vai a http://jquery.com/download/ e fai clic sul link Scarica il file di mappa per la tua versione, e ti consigliamo di scaricare anche il file non compresso.

inserisci la descrizione dell'immagine qui

Avere il file di mappa in posizione consente di eseguire il debug del jQuery minified tramite le origini originali, il che consente di risparmiare un sacco di tempo e frustrazione se non ti piace gestire nomi di variabili come a e c .

Ulteriori informazioni su sourcemaps qui: Introduzione a JavaScript Source Maps

Schiva: disabilita le mappe acide

Invece di ottenere i file, puoi in alternativa distriggersre completamente le mappe di origine JavaScript per ora, nelle tue impostazioni. Questa è una scelta eccellente se non si pianifica mai di eseguire il debug di JavaScript in questa pagina. Usa l’icona a forma di ingranaggio in basso a destra di DevTools, per aprire le impostazioni, quindi: inserisci la descrizione dell'immagine qui

È ansible rimuovere il 404 rimuovendo la linea

 //@ sourceMappingURL=jquery-1.10.2.min.map 

dalla parte superiore del tuo file jQuery.

La parte superiore del file jQuery sarà simile a questa.

 /*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license //@ sourceMappingURL=jquery-1.10.2.min.map */ 

Basta cambiarlo

 /*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license */ 

Scopo di una mappa sorgente

Fondamentalmente è un modo per mappare un file combinato / minificato a uno stato non-costruito. Quando costruisci per la produzione, insieme alla minimizzazione e alla combinazione dei tuoi file JavaScript, generi una mappa sorgente che contiene informazioni sui tuoi file originali. Quando si esegue una query su un determinato numero di riga e colonna nel codice JavaScript generato, è ansible eseguire una ricerca nella mappa di origine che restituisce la posizione originale. Gli strumenti di sviluppo (attualmente WebKit nightly build, Google Chrome o Firefox 23+) possono analizzare automaticamente la mappa di origine e farla apparire come se si trattasse di file non miniati e non vincolati. (Leggi di più su questo qui )

Come annunciato in jQuery 1.11.0/2.1.0 Beta 2 Released il commento della mappa sorgente verrà rimosso in modo che il problema non venga visualizzato nelle versioni più recenti di jQuery .

Ecco l’annuncio ufficiale:

Una delle modifiche apportate in questa versione beta è la rimozione del commento di sourcemap. Le sourcemaps hanno dimostrato di essere una cosa molto problematica e sconcertante per gli sviluppatori, generando decine di domande confuse su forum come StackOverflow e inducendo gli utenti a pensare che jQuery stesso fosse rotto.

Ad ogni modo, se hai bisogno di usare una mappa sorgente, sarà comunque disponibile:

Continueremo a generare e a distribuire i file sorgente, ma sarà necessario aggiungere il commento appropriato della mappa del sourc alla fine del file minificato se il browser non supporta l’associazione manuale dei file delle mappe (al momento, nessuno lo fa). Se si genera il proprio file jQuery utilizzando il processo di compilazione personalizzato, il commento di sourcemap sarà presente nel file miniato e la mappa viene generata; puoi lasciarlo in uso e utilizzare le mappe macro o modificarlo e ignorare completamente il file della mappa.

Qui puoi trovare maggiori dettagli sulle modifiche.


Qui puoi trovare la conferma che con jQuery 1.11.0/2.1.0 Released il commento della mappa di origine nel file minificato viene rimosso.

  1. Scarica il file della mappa e la versione non compressa di jQuery. Mettili con la versione minificata: JavaScript

  2. Includi la versione minificata nel tuo codice HTML: HTML

  3. Controlla su Google Chrome: Google Chrome

  4. Leggi l’ introduzione a JavaScript Source Maps

  5. Prendi confidenza con il debug di JavaScript

Le nuove versioni di jQuery richiedono questo file http://code.jquery.com/jquery-1.10.2.min.map

L’usabilità di questo file è descritta qui http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/

Aggiornare:

jQuery 1.11.0 / 2.1.0

// Il commento sourceMappingURL non è incluso nel file compresso .

Come comprendo il browser, almeno Chrome, non disabilita la mapping di origine per impostazione predefinita. Ciò significa che gli utenti della tua applicazione attiveranno questa richiesta di mapping di origine per impostazione predefinita.

Puoi rimuovere il mapping sorgente eliminando //@ sourceMappingURL=jquery.min.map dal tuo file JavaScript.

Dopo aver seguito le istruzioni nelle altre risposte, avevo bisogno di togliere la versione dal file di mappa perché questo funzionasse per me.

Esempio: Rinomina

jquery-1.9.1.min.map

a

jquery.min.map

Se si desidera ottenere una versione diversa del file della mappa di origine, è ansible utilizzare questo collegamento http://code.jquery.com/jquery-x.xx.x.min.map

Invece x.xx.x inserisci il tuo numero di versione.

Nota: alcuni link, che ottieni con questo metodo, potrebbero essere danneggiati 🙂

Mi è stato presentato lo stesso problema. La causa per me era Grunt che concatenava il mio file JavaScript.

Stavo usando un ;\n come separatore che ha causato il percorso della mappa sorgente a 404.

Quindi gli strumenti di sviluppo stavano cercando jquery.min.map; invece di jquery.min.map .

So che non è la risposta alla domanda originale, ma sono sicuro che ci sono altri là fuori con una configurazione Grunt simile.

jQuery 1.11.0 / 2.1.0 // Il commento sourceMappingURL non è incluso nel file compresso.

Supponendo che tu abbia controllato che il file sia effettivamente presente sul server, ciò potrebbe anche essere causato dal fatto che il tuo server web limita i tipi di file serviti:

  • In Apache questo può essere fatto con la direttiva o con RewriteRule se si sta usando mod_rewrite.
  • In IIS avresti bisogno di guardare il file Web.config .