javascript文本压缩/解压
假设我有一个400K的文本文件,我想从javascript读取。问题是,我的目标观众有一个缓慢的连接,所以400k可能需要很长时间才能加载。javascript文本压缩/解压
我想我需要压缩文件,但是,我怎样才能解压缩它通过在客户端的JavaScript?
是否值得呢,还是将解压缩所需的时间否定下载时间保存的时间?
UPDATE
只要是明确的,该文件是文本(数据)不代码。
DECOMPRESS JAVASCRIPT
是IMPOSSIBLE隐藏压缩码。
与/封隔器压缩一个典型的JavaScript /启动用下面的代码:
`eval(function(p,a,c,k,e,r)`…
`eval` can simply be replaced by `alert`.
eval
的函数评价为有JavaScript字符串参数。在大多数封隔器中,使用eval
,然后使用document.write
。
要解压缩的JavaScript,通过以下的一个替代这些方法:
更换由alert
eval
(像这样:alert(function(p,a,c,k,e,r)
... 并打开或刷新HTML页面,该警报将简单地在弹出窗口中打印代码)
2.如果JavaScript中的<body>
元素后出现,你可以添加一个<textarea>
像这样:
`<textarea id="code"></textarea>`
然后,替换eval
(...);通过document.getElementById("code").value=…;
从两个选择,第一是更简单...祝你好运:)
[老问题,但以防万一其他人碰到这个绊倒...]
以最好的方式处理这个是使用HTTP compression。所有主要的Web服务器和Web浏览器均支持此功能。事实上,如果您使用的是虚拟主机服务,并且您的文件通常需要压缩(例如css,js,html)的文件类型,那么它可能已经被压缩以用于传输,并且您只是不知道它。
是的,你不必自己处理压缩/解压缩浏览器为你做,只有你必须指定你正在使用的服务器的服务器参数。 注意:您可以明确指定所有MimeType(响应格式的) Ex。
下面是tomcat服务器设置参数。
<Connector port="8443"
protocol="org.apache.coyote.http11.Http11Protocol"
SSLEnabled="true"
maxThreads="200"
compression="on"
compressionMinSize="2048"
compressableMimeType="application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,charset=UTF-8,application/x-www-form-urlencoded,text/html,text/plain,text/css,text/javascript,text/json,application/x-javascript,application/javascript,application/json"
/>
要确保压缩工作正常,您可以检查。 按F12(开发者工具)[我的是Chrome] - >网络标签 - >开始录音。 单击响应所需数据/文本的请求url。 然后转到标题的标签。
你会看到。
请求/响应集管
Content-Encoding:gzip
Accept-Encoding: gzip, deflate
,使用编码它。并在网络标签的尺寸列againsr该网址将显示缩小的大小。
那么,这取决于文本文件包含的内容!基本上,压缩将删除额外的空格和换行符,这可以大大减少文件大小,但是如何在客户端重新构建文件? – Kirtan 2009-06-15 06:10:01