Heim > Artikel > Web-Frontend > So reduzieren Sie die JSON-Datei, wenn sie zu groß ist
So reduzieren Sie JSON-Dateien: 1. Optimieren Sie die Datenstruktur und reduzieren Sie die Datenmenge, die in der Datei gespeichert werden muss. 2. Lassen Sie nicht zu, dass JSON auf Chinesisch transkodiert wird Zu den gängigen JSON-Komprimierungsalgorithmen gehören jetzt „CJSON“ und „HPack“.
Wenn Front-End und Back-End interagieren, werden oft lokalisierte Dateien mit extrem geringer Änderungshäufigkeit generiert und direkt verarbeitet, um Netzwerkanforderungen zu reduzieren . Operationen wie Adressauswahldaten, viele Plattformen nutzen mittlerweile solche Operationen.
Aber für einige kleine Datenmengen ist dies eine sehr einfache Sache, aber wenn ich auf große Datenmengen stoße, ist dies offensichtlich. Wenn sie gemäß der etablierten Struktur generiert werden Die Größe der Front-End-JSON-Datei beträgt 4,2 MB. Später habe ich einen Weg gefunden, die Daten auf 0,7 MB zu reduzieren klein, ich kann nur die Struktur ändern oder dem Frontend folgen.
Sprechen wir über die „spezifische Komprimierungsmethode“ am Beispiel von PHP
Optimieren Sie die Datenstruktur
Um die Dateigröße zu reduzieren, sollte die Priorität darin bestehen, die Datenmenge zu reduzieren, die die Datei speichern muss. Was getan werden muss, ist, die minimal mögliche Struktur zu diskutieren, unnötige Felder zu entfernen und die Wörter und Codes zu reduzieren.
2. Lassen Sie nicht zu, dass JSON Chinesisch transkodiert.
Beim Aufruf der PHP-Funktion json_encode() wird Chinesisch unter normalen Umständen nur reduziert die Lesbarkeit der generierten JSON-Zeichenfolge, aber in diesem speziellen Fall kann der durch die Codierung verursachte zusätzliche große Volumenaufwand nicht ignoriert werden. Ohne Kodierung wird die Datei viel kleiner sein.
Für diese Erklärung genügen die folgenden Funktionen.
function jsonEncode($da) { return urldecode(json_encode(arrUrlencode($da))); } function arrUrlencode($da) { if(is_array($da)){ foreach($da as $k => $v) { if(is_array($v)){ $da[$k] = arrUrlencode($v); }elseif(is_string($v) && !is_numeric($v)) { $da[$k] = urlencode($v); } } } return $da; }
3. Komprimierungsalgorithmus
Gemeinsame JSON-Komprimierungsalgorithmen umfassen jetzt CJSON und HPack und sparen einen Teil des Speicherplatzverbrauchs verursacht durch doppelte Schlüsselwerte. Dieses Mal habe ich den CJSON-Algorithmus verwendet.
HPack extrahiert den Schlüsselwert im Grunde wie folgt. Es sieht eher aus wie eine tabellarische Form:
rrreeDas obige ist der detaillierte Inhalt vonSo reduzieren Sie die JSON-Datei, wenn sie zu groß ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!