我的 Web 应用程序将 JSON 文件发送到客户端。这些文件可能比较大。
我可以在服务器端压缩它们并在客户端透明地接收未压缩的内容吗?
例如,如果我写
$.getJSON( "ajax/test.json", function( data ) {
...
});
我可以只ajax/test.json
压缩 gzip 并将内容编码设置为 gzip 吗?
我的 Web 应用程序将 JSON 文件发送到客户端。这些文件可能比较大。
我可以在服务器端压缩它们并在客户端透明地接收未压缩的内容吗?
例如,如果我写
$.getJSON( "ajax/test.json", function( data ) {
...
});
我可以只ajax/test.json
压缩 gzip 并将内容编码设置为 gzip 吗?
您尚未指定有关服务器端设置的任何信息。
如果您正在动态生成 json,那么您应该检查浏览器发送的请求是否包含Accept-Encoding: gzip
标头。如果是,则Content-Encoding: gzip
在响应中添加标头并发送 gzip 压缩数据。
如果 json 文件是静态的,你应该application/json
在你的网络服务器配置中将 mime 类型配置为可压缩,或者更好的是,预压缩它,将 file.json 和 file.json.gz 存储在你的网络服务器上,然后配置条件重写和标题,所以压缩文件仅提供给支持压缩的客户端。搜索/询问 ServerFault 如何在您的网络服务器上执行此操作。