Wie man javascript zu Parsen json.gz Datei-browser

Kurz gesagt, im Wesentlichen bin ich versucht, zu erstellen eine Heavy-client & Light-Server Single-Page-Anwendung.

Bin ich BEKOMMEN-ing eine komprimierte JSON-Daten-Datei, die über einen einfachen HTML-script-tag.

<script type="text/javascript" src="myjson.json.gz"></script>
<script type="text/javascript" src="parse.js"></script>

myjson.json – Datei ist, dass der Inhalt ähnlich:

media_library={some:"json", data: "here"}

Nur, es ist ungefähr 6MB. Die parse.js javascript-code enthält die Logik zum Bearbeiten der Erstellung der web-Seite mit den Daten aus media_libary variable deklariert myjson.json – Datei.

Komprimierung zu myjson.json.gz reduziert die Größe auf 650 KB. Das ermöglicht eine schnellere Ladezeit.

Googelte ich nach Möglichkeiten, um entweder:

(1) Finden Sie den code, um javascript zu Blasen Sie die gzip-Datei zu myjson.json und dann get es Los

(2) Finden Sie den code, um javascript zu Lesen das json-Objekt aus der gzip-Datei

Ich konnte nichts finden entweder.

Ich m auf der Suche nach einer Möglichkeit zur Einsparung von Netzwerk-Zeit für die übertragung der gesamten Daten.

Dem Gedanken an den server senden, JSON, das ist nur erforderlich, stattdessen überquert hat meiner Meinung nach, aber das geht gegen meine Absicht, halten die server das Licht und dass mein client das suchen,Sortieren,filtern und präsentieren von (schwer-client-Zeugs).

Gibt es eine Möglichkeit, ich kann den server nur senden Sie die JSON-Daten komprimiert, nur zu entpacken und die Arbeit auf in auf den browser ?

Dank.

Ich bin mit python -m CGIHTTPServer wie mein server.

Dies ist der browser, Netzwerk-Aktivität Inspektor.

Wie man javascript zu Parsen json.gz Datei-browser

InformationsquelleAutor anu | 2016-12-14

 

One Reply
  1. 1

    Verwendung einer komprimierten übertragung-Codierung, wie gzip. Die Chancen stehen Ihre server schon konfiguriert ist, um zu dienen, und Ihr browser kann auch schon damit umgehen. Dann, Sie brauchen nicht, etwas zu tun. Als bonus kann der browser angeben, welche Kodierungen unterstützt werden.

    https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Transfer-Encoding

    Den Besonderheiten der Durchführung hängen auf Ihrem server. Meist ist es eine einfache config-Zeile. Wenn Sie eine Ressource, die Treffer sind sehr Häufig, können Sie auch pre-compress es so, dass der server nur hat, um es zu senden.

    • Hinzugefügt einige details zu der Frage. Überprüfen Sie bitte. danke. Brauche ich um den server zu ändern, den Header in irgendeiner Weise ?
    • Welche web-server benutzt du? Apache? Nginx?
    • Gurney-Python-CGIHTTPServer
    • Mit einem richtigen web-server für statische Ressourcen, wie Nginx. Sie können immer noch proxy zurück zu Ihrem Anwendung-server als notwendig.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.