Beim Einfügen einer lokalen Skriptdatei wird in Google Chrome die Warnung "Ressource als Skript interpretiert, aber mit Text / Klartext vom Typ MIME übertragen" angezeigt.
Ich weiß, dass das Problem beim Laden einer Datei von einem Server oder über Ajax auftritt, was meistens davon abhängt, dass falsche Header gesetzt werden.
Das Seltsame ist, dass ich diese Warnung erhalte, obwohl sie aus einem lokalen Ordner ausgeführt wird: file:///C:/test/foo.html
Dies geschieht nur in Chrome mit dem grundlegendsten HTML, das es gibt:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="bar.js"></script>
</head>
<body>
</body>
</html>
bar.js ist auch so einfach wie es nur geht:
function hello() {}
Ich habe versucht, ein Meta-Tag hinzuzufügen:
<meta http-equiv="content-script-type" content="text/javascript">
und mit anderen Doktypen getestet, aber nichts scheint zu helfen.
Dies ist offensichtlich kein wirkliches Problem, da die Skripte immer noch gut funktionieren, aber ich arbeite an einem großen Projekt und habe derzeit ungefähr 150 Skripte enthalten. Es macht es daher schwierig zu erkennen, wann eine tatsächliche Warnung zwischen ihnen auftritt.
Alles funktioniert einwandfrei, wenn ich die Datei lokal oder remote auf einem Server ausführe.
Irgendwelche Ideen, warum Chrom mich damit nervt?
quelle
Antworten:
Ich habe es herausgefunden!
Das Visual Studio-Installationsprogramm muss der Registrierung eine fehlerhafte Zeile hinzugefügt haben.
Öffnen Sie sich
regedit
und sehen Sie sich diesen Registrierungsschlüssel an:Sehen Sie diesen Schlüssel? Der Inhaltstyp-Schlüssel? Ändern Sie den Wert von text / plain in text / javascript.
Endlich kann Chrom wieder leicht atmen.
Ich sollte beachten, dass unter Windows 7 standardmäßig weder Content Type noch PercievedType vorhanden sind, sodass Sie wahrscheinlich beide sicher löschen können, aber das Minimum, das Sie tun müssen, ist diese Bearbeitung.
Wie auch immer, ich hoffe, das behebt es auch für Sie!
quelle
.js
Dateien.txt
aussehende Symbole hatten, und stellte daher sicher, dass sie dem richtigen Datentyp zugeordnet waren. Sie waren nicht!Ich habe versucht, dieses Problem mit dieser Methode zu beheben, aber es hat bei mir nicht funktioniert.
Mein Problem war, dass der IIS-Manager keine MIME-Typen in den HTTP-Funktionen hatte.
Ich konnte es einschalten, indem ich den statischen Kontext über ...
-> Systemsteuerung
-> Programme
-> Windows-Funktionen ein- oder ausschalten
-> Internetinformationsdienste
-> World Wide Web Services
-> Allgemeine HTTP-Funktionen
-> [X] Statischer Inhalt.
Danach erschienen MIME-Typen und alles begann wieder zu funktionieren.
quelle
Die akzeptierte Antwort ist großartig! Nur um eine Antwort für diejenigen zu veröffentlichen, die auf ein Problem wie mich stoßen und manchmal einen Abteilungs- / Hochschulcomputer verwenden, bei dem ich nicht die Berechtigung habe, einen Schlüsselwert in regedit zu ändern.
Veränderung
<script type="text/javascript" src="main.js"></script>
zu
<script src="main.js"></script>
Obwohl die Fehlermeldung weiterhin vorhanden ist, wurde die Seite korrekt geladen.
quelle