Kurz gesagt - Im Wesentlichen versuche ich eine Heavy-client & Light-Server
Single Page-Anwendung zu erstellen.So erhalten Sie JavaScript zu analysieren json.gz-Datei im Browser
Ich erhalte eine komprimierte JSON-Datei über ein einfaches HTML-Skript-Tag.
<script type="text/javascript" src="myjson.json.gz"></script>
<script type="text/javascript" src="parse.js"></script>
myjson.json
Datei hat Inhalt ähnlich wie:
media_library={some:"json", data: "here"}
Nur, es geht um 6 MB. Der parse.js
JavaScript-Code hat Logik, um die Webseite mit den Daten aus media_libary
Variablen zu manipulieren, die in myjson.json
Datei deklariert sind.
Durch Komprimierung auf myjson.json.gz
wurde die Größe auf 650 KB reduziert. Dies ermöglicht eine schnellere Ladezeit.
Ich googeln nach Möglichkeiten, um entweder:
(1) Finden Sie Javascript-Code zu erhalten, die gzip-Datei aufzublasen myjson.json und dann loslegen
(2) Finden Sie Javascript-Code zu erhalten, Lesen Sie das JSON-Objekt aus der Gzip-Datei
Ich konnte nichts auf beiden finden.
Ich suche nach einer Möglichkeit, Netzwerkzeit für die Übertragung der gesamten Daten zu sparen.
Die Idee, den Server dazu zu bringen, JSON zu senden, der nur benötigt wird, ist mir in den Sinn gekommen, aber das widerspricht meiner Absicht, den Server hell zu halten und meinen Client zum Suchen, Sortieren, Filtern und Präsentieren zu zwingen).
Gibt es eine Möglichkeit, dass ich den Server dazu bringen kann, die JSON-Daten nur zu komprimieren, um sie zu dekomprimieren und im Browser zu bearbeiten?
Danke.
Ich verwende python -m CGIHTTPServer
als meinen Server.
Dies ist der Netzwerkaktivitätsinspektor des Browsers.
Versuchen Sie, den [MIME-Typ der CGI-Skriptausgabe] (https://docs.python.org/2/library/cgi.html) auf ["Content-Type: application/gzip"] zu setzen (http://superuser.com/a/960710). FWIW die komprimierte Datei ist mehr JSONP (eine JavaScript-Datei) als "JSON" – traktor53