jQuerys jquery-1.10.2.min.map löst eine 404 aus (nicht gefunden)

1061

Ich sehe Fehlermeldungen zu einer Datei min.map, die nicht gefunden wurden:

GET jQuerys jquery-1.10.2.min.map löst eine 404 aus (nicht gefunden)


Bildschirmfoto

Geben Sie hier die Bildbeschreibung ein

Woher kommt das?

Paul Irish
quelle
1
Um mein Problem zu beheben, habe ich die Details dieser Antwort nicht befolgt. Meine Site verwendet nur die js-Datei, nicht die Karte. Ich habe einfach meinen Browser-Cache geleert, um dies zu beheben, und den Browser neu gestartet. Es trat auf, als ich einen 500 Internal Server-Fehler auf einem generischen ASP.NET-Handler (ExtDirectProxy.ashx) erhielt, der erstellt und Daten an jquery übergeben wurde, um die Seite zu laden. stackoverflow.com/questions/26135251/…
MacGyver
1
Ändern Sie die benötigte Version und laden Sie sie von der folgenden URL herunter und benennen Sie sie in code.jquery.com/jquery-1.11.1.min.map um
Iman
1
Dies verlangsamt das Herunterladen, da Browser dies herunterladen, auch wenn es nicht benötigt wird.
Quentin 2.
1
@ Quentin2 gemäß html5rocks.com/de/tutorials/developertools/sourcemaps Die
Mathemats

Antworten:

1271

Wenn Chrome DevTools ist eine 404 für eine .map - Datei Berichterstattung (vielleicht jquery-1.10.2.min.map, jquery.min.mapoder jquery-2.0.3.min.maperste , was zu wissen, kann aber mit etwas passieren) ist dies nur angefordert, wenn die DevTools verwenden. Ihre Benutzer werden diese 404 nicht treffen.

Jetzt können Sie dies beheben oder die Sourcemap-Funktionalität deaktivieren.

Fix: Holen Sie sich die Dateien

Als nächstes ist es eine einfache Lösung. Gehen Sie zu http://jquery.com/download/ und klicken Sie auf den Link Kartendatei für Ihre Version herunterladen. Sie möchten auch, dass die unkomprimierte Datei heruntergeladen wird.

Geben Sie hier die Bildbeschreibung ein

Wenn Sie die Map-Datei installiert haben, können Sie Ihre minimierte jQuery über die Originalquellen debuggen. Dies spart viel Zeit und Frust, wenn Sie nicht gerne mit Variablennamen wie aund arbeiten c.

Weitere Informationen zu Quellkarten finden Sie hier: Eine Einführung in JavaScript- Quellkarten

Ausweichen: Deaktivieren Sie Quellkarten

Anstatt die Dateien abzurufen, können Sie JavaScript-Quellkarten in Ihren Einstellungen vorerst vollständig deaktivieren. Dies ist eine gute Wahl, wenn Sie niemals vorhaben, JavaScript auf dieser Seite zu debuggen. Verwenden Sie das Zahnradsymbol unten rechts in den DevTools, um die Einstellungen zu öffnen, und dann: Geben Sie hier die Bildbeschreibung ein

Paul Irish
quelle
9
Ich stimme dafür (obwohl Sie Ihre eigene Frage beantwortet haben), weil ich es heute zum ersten Mal bemerkt habe. Es hat mich ein bisschen verrückt gemacht, es herauszufinden, dann habe ich den gleichen 404-Fehler auf 2 Websites bemerkt, an denen ich gearbeitet habe, und mir ist die Option "Quellkarten aktivieren" in den Sinn gekommen ... das ist es, was ich bekomme, wenn ich mir deine Entwickler-Tools ansehe spricht und schaltet alles auf einmal ein. Ich werde die von Ihnen bereitgestellten Dokumente durchgehen.
Adam-Asdf
47
Ich muss zwei Dinge hinzufügen. 1) Das Herunterladen einer jQuery-Map-Datei reicht nicht aus. Sie benötigen außerdem einen unkomprimierten Quellcode (andernfalls wird beim Debuggen eine leere jquery - *. Js-Datei angezeigt). 2) Wenn Sie jQuery von einem der CDNs laden, befinden sich alle drei Dateien (Map, komprimierter und unkomprimierter Quellcode) am selben Speicherort und Sie können sofort mit dem Debuggen beginnen.
Konrad Dzwinel
42
Ich bin nicht sicher, ob ein 404 dafür von DevTools angehoben werden sollte, verwirrt die Leute, wie es scheint. Trotzdem weiß ich jetzt zumindest, wie ich damit umgehen soll. Auch @ adam-asdf, nur damit Sie wissen, dass Sie aktiv ermutigt werden, Ihre eigene Frage auf SO zu beantworten ... meta.stackexchange.com/questions/17845/…
Greg
12
Ich stimme @Greg zu. Ein 404-Fehler in der Konsole für eine Quellzuordnung (der im Auftrag von Chrome / DevTools angefordert wurde) scheint nicht sehr hilfreich zu sein. Vor allem, weil viele Menschen nicht einmal verstehen, warum (oder von wo) diese Ressource angefordert wird.
idbehold
9
@ SpYk3HH Es ist völlig in Ordnung, Ihre eigene Antwort zu akzeptieren, und das Bearbeiten von Bibliotheken von Drittanbietern ist nicht wirklich ratsam. Wenn Sie Inhalte aktualisieren möchten, werden Sie vergessen, was geändert wurde.
Lipis
276

Sie können den 404 entfernen, indem Sie die Linie entfernen

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

aus dem oberen Teil Ihrer jQuery-Datei.

Der obere Teil der jQuery-Datei sieht folgendermaßen aus.

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

Ändern Sie das einfach in

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

Zweck einer Quellkarte

Grundsätzlich ist es eine Möglichkeit, eine kombinierte / minimierte Datei wieder einem nicht erstellten Zustand zuzuordnen. Wenn Sie für die Produktion erstellen und Ihre JavaScript-Dateien minimieren und kombinieren, generieren Sie eine Quellzuordnung, die Informationen zu Ihren Originaldateien enthält. Wenn Sie eine bestimmte Zeilen- und Spaltennummer in Ihrem generierten JavaScript abfragen, können Sie in der Quellzuordnung nachschlagen, wobei der ursprüngliche Speicherort zurückgegeben wird. Entwicklertools (derzeit WebKit Nightly Builds, Google Chrome oder Firefox 23+) können die Quellzuordnung automatisch analysieren und so erscheinen lassen, als würden Sie nicht minimierte und nicht kombinierte Dateien ausführen. (Lesen Sie mehr dazu hier )

kiranvj
quelle
Entschuldigung, ich meinte: Gibt es eine Gelegenheit, bei der ich diese Zeile benötigt hätte?
Flion
6
Nur erforderlich, wenn Sie Ihren minimierten JS-Quellcode debuggen müssen. Überprüfen Sie den zweiten Absatz hier für weitere Details html5rocks.com/de/tutorials/developertools/sourcemaps
kiranvj
5
Ich wünschte, ich hätte dies gesehen, bevor ich eine ausgewählte Antwort gegeben hätte. Dies ist viel einfacher und sollte die primäre Antwort sein. Die Selbstantwort des Ops ist gut für Informationen, aber definitiv zweitrangig, da dies die erste Frage ist, die beim Googeln auftaucht, wie man diesen Ärger loswird.
SpYk3HH
13
Das Bearbeiten von Bibliotheken, um solche Dinge loszuwerden, ist keine gute Wahl. Jedes Mal, wenn Sie jquery aktualisieren, wird diese Zeile wieder angezeigt.
Arman P.
6
Ab Januar 2014 sind Sourcemap-Referenzen nicht in der jQuery-Distribution enthalten.
Dan Esparza
44

Wie in jQuery 1.11.0/2.1.0 Beta 2 Releasedder Quellkarte angekündigt, wird der Kommentar entfernt, sodass das Problem in neueren Versionen von nicht auftritt jQuery.

Hier ist die offizielle Ankündigung:

Eine der Änderungen, die wir in dieser Beta vorgenommen haben, ist das Entfernen des Sourcemap-Kommentars. Sourcemaps haben sich für Entwickler als sehr problematisch und rätselhaft erwiesen. Sie haben in Foren wie StackOverflow zahlreiche verwirrte Fragen generiert und die Benutzer zu der Annahme veranlasst, dass jQuery selbst fehlerhaft ist.

Wenn Sie eine Quellkarte verwenden müssen, ist diese dennoch verfügbar:

Wir werden weiterhin Sourcemaps generieren und verteilen, aber Sie müssen den entsprechenden Sourcemap-Kommentar am Ende der minimierten Datei hinzufügen, wenn der Browser das manuelle Zuordnen von Map-Dateien nicht unterstützt (derzeit keine). Wenn Sie Ihre eigene jQuery-Datei mithilfe des benutzerdefinierten Erstellungsprozesses generieren, ist der Quellkartenkommentar in der minimierten Datei vorhanden und die Zuordnung wird generiert. Sie können es entweder belassen und Quellenkarten verwenden oder es bearbeiten und die Kartendatei vollständig ignorieren.

Hier finden Sie weitere Details zu den Änderungen.


Hier finden Sie eine Bestätigung, dass mit dem jQuery 1.11.0/2.1.0 ReleasedQuell-Map-Kommentar in der minimierten Datei entfernt wird.

gotqn
quelle
1
Aber wenn diese Verwirrung nicht gewesen wäre, hätte ich sie hier nie nachgeschlagen und gewusst, dass es Karten gibt. Ich hatte minimierten Dateien, in die ich hineinschauen wollte, manuell Leerzeichen hinzugefügt.
Eiswasser
1
Der Chrome-Browser verfügt über eine Schaltfläche, mit der eine verkleinerte Datei hübsch formatiert werden kann. Online-Prettifizierer sind ebenfalls verfügbar.
Quentin 2.
16

Für die neuen Versionen von jQuery ist diese Datei http://code.jquery.com/jquery-1.10.2.min.map erforderlich

Die Verwendbarkeit dieser Datei wird hier beschrieben. Http://www.html5rocks.com/de/tutorials/developertools/sourcemaps/

Aktualisieren:

jQuery 1.11.0 / 2.1.0

// sourceMappingURL-Kommentar ist nicht in der komprimierten Datei enthalten .

Andres Separ
quelle
3
Nein, ich glaube nicht, dass jQuery diese Datei "benötigt". Dies ist nur erforderlich, wenn Sie die Quellzuordnung beim Debuggen verwenden möchten. In diesem Fall werden sowohl die src-Datei als auch die Zuordnungsdatei benötigt.
Styfle
1
Hallo @styfle, die Quellzuordnung war in Version 1.10.2 erforderlich, muss jedoch ab Version 1.11.0 / 2.1.0 manuell hinzugefügt werden. Dies liegt daran, dass viele Benutzer von dem Fehler betroffen waren, der in der Browserkonsole
Andres Separ
9

Soweit ich den Browser verstehe, deaktiviert Chrome die Quellzuordnung standardmäßig nicht. Das bedeutet, dass die Benutzer Ihrer Anwendung diese Quellzuordnungsanforderung standardmäßig auslösen.

Sie können die Quellzuordnung entfernen, indem Sie die //@ sourceMappingURL=jquery.min.mapaus Ihrer JavaScript-Datei löschen .

James J. Ye
quelle
8

Nachdem ich den Anweisungen in den anderen Antworten gefolgt war, musste ich die Version aus der Kartendatei entfernen, damit dies für mich funktioniert.

Beispiel: Umbenennen

jquery-1.9.1.min.map

zu

jquery.min.map

Drobison
quelle
6

Mir wurde das gleiche Problem präsentiert. Die Ursache für mich war, dass Grunt meine JavaScript-Datei verkettete.

Ich habe a ;\nals Trennzeichen verwendet, wodurch der Pfad zur Quellkarte zu 404 führte.

Also suchte dev tools jquery.min.map;statt jquery.min.map.

Ich weiß, dass dies nicht die Antwort auf die ursprüngliche Frage ist, aber ich bin sicher, dass es andere gibt, die eine ähnliche Grunt-Konfiguration haben.

Nickspiel
quelle
5

jQuery 1.11.0 / 2.1.0 Der Kommentar // sourceMappingURL ist nicht in der komprimierten Datei enthalten.

user3235672
quelle
1

Angenommen, Sie haben überprüft, ob die Datei tatsächlich auf dem Server vorhanden ist, kann dies auch daran liegen, dass Ihr Webserver die bereitgestellten Dateitypen einschränkt:

Molomby
quelle