Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript three.js JSON文件压缩_Javascript_Json_Three.js - Fatal编程技术网

Javascript three.js JSON文件压缩

Javascript three.js JSON文件压缩,javascript,json,three.js,Javascript,Json,Three.js,我有几个正在使用的Three.js WebGL网页。请看这里: 但是,我从静态ftp服务器托管的JSON文件的文件大小约为4-6MB。它们很大,因为JSON对象中有许多“顶点”。我可以将自己计算机上的文件压缩到tar.gz,大约1MB。有没有办法压缩这些文件,让用户的浏览器用javascript解压文件,然后由Three.js JSONLoader加载 警告:JSON库在某个时候发生了更改,因此我不知道在Python 3之外它的工作情况如何。 所以我要提到的一件事是,也许可以编写自己的脚本来处理

我有几个正在使用的Three.js WebGL网页。请看这里:

但是,我从静态ftp服务器托管的JSON文件的文件大小约为4-6MB。它们很大,因为JSON对象中有许多“顶点”。我可以将自己计算机上的文件压缩到tar.gz,大约1MB。有没有办法压缩这些文件,让用户的浏览器用javascript解压文件,然后由Three.js JSONLoader加载

警告:JSON库在某个时候发生了更改,因此我不知道在Python 3之外它的工作情况如何。

所以我要提到的一件事是,也许可以编写自己的脚本来处理JSON的重新序列化和限制浮点精度。JSON的精度将高达16位小数,这将影响文件大小。对于Blender exporter,我入侵了JSON库来处理这个问题。参考这里的来源(很难看)。你可以重构它,使之成为搅拌机之外的独立设备

JSON黑客:

dump()
搅拌机导出器的实现

您可以在js中解压它们,只需将zip作为blob下载并解压为json。您可以使用gzipI建议缩小和压缩json文件来传递文件。希望这样就足够了。好吧,那么有一个解决方案是用js代码创建一个blob并解压缩这个blob?与服务器无关(这是一个MaxCDN静态区域)?我觉得服务器应该发送json压缩,但也许我需要一个gzip的http请求:true??选择静态区域上的“我的设置”将内容压缩为gzip。MaxCDN说它支持的文件类型之一是application/json。但当我加载页面并查看开发工具(网络)时,它似乎没有发送压缩文件。我的问题与这里的问题类似:但我没有使用Blender。