Ich habe eine Website, die wesentlich langsamer lädt, wenn ich
hinzufüge %Vor%zum Kopf des index.html.
Nach dem Debuggen für eine Weile stelle ich fest, dass alle JavaScript-Quellen sequentiell geladen werden, wenn dieses Meta-Tag vorhanden ist. Wenn ich diesen Tag entferne, wird JavaScript parallel geladen, so dass die Website viel schneller geladen werden kann.
Um dies zu reproduzieren, schrieb ich diese kleine Beispiel-HTML-Datei:
%Vor%Hier ist die Netzwerkzeitachse mit dem Meta-Tag "Content-Security-Policy":
Wie man sieht, werden Ressourcen nacheinander geladen.
Hier ist die Netzwerk-Zeitleiste, wenn ich das "Content-Security-Policy" -Tag entferne.
Wie erwartet, werden Javascript-Ressourcen hier parallel geladen und die Seite ist auch bei kleinen Beispielen schneller geladen.
Gibt es eine Erklärung für dieses Verhalten? Wie kann ich das Beste aus beiden Welten haben: Paralleles Laden von Javascript-Dateien bei aktivierter "Content-Security-Policy"?
Die Tests wurden alle mit der neuesten Version von Chrome durchgeführt (50.0.2661.75 (64-Bit)). Weder Safari noch Firefox zeigen das gleiche seltsame Verhalten, sie laden Javascripts parallel, auch wenn "Content-Security-Policy" aktiviert ist.
Dies ist auf einem MAC mit
nicht reproduzierbar %Vor%Beide Browser liefern diese drei Dateien von localhost in ein paar Millisekunden und parallel mit deaktiviertem Caching.
Ich habe das auch auf einem Remote-Server versucht, also nicht localhost und beides verlangsamt, aber alle Dateien wurden parallel geladen, dh ich konnte keinen Unterschied mit und ohne CSP ein- oder ausschalten sehen.
Ich glaube, dass es einen Mozilla-Wechsel gab, um C ++ für CSP zu verwenden, aber das war vor Jahren und würde Chrome nicht beeinflussen.
Tags und Links javascript html5 google-chrome performance