1.使用压缩与不使用压缩的HTTP输出比较

2.开启gzip

利用apache mod_deflate module 开启gzip

开启方法:

sudo a2enmod deflate

sudo /etc/init.d/apache2 restart

关闭方法:

sudo a2dismod deflate

sudo /etc/init.d/apache2 restart

3.设置需要gzip压缩输出的类型

json的输出类型是application/json,所以可以这样设置

在httpd.conf的中加入

AddOutputFilterByType DEFLATE application/json

$data = array(

array('name'=>'one','value'=>1),

array('name'=>'two','value'=>2),

array('name'=>'three','value'=>3),

array('name'=>'four','value'=>4),

array('name'=>'five','value'=>5),

array('name'=>'six','value'=>6),

array('name'=>'seven','value'=>7),

array('name'=>'eight','value'=>8),

array('name'=>'nine','value'=>9),

array('name'=>'ten','value'=>10),

);

header('content-type:application/json');

echo json_encode($data);

?>

设置gzip前输出:

设置gzip后输出:

4.单个json使用gzip压缩输出

设置AddOutputFilterByType DEFLATE application/json后,所有json格式的数据输出都将使用gzip压缩输出。

如果只想某一个json使用gzip压缩输出,其他不需要,可以使用ob_start();方法来实现。

首先不需要设置AddOutputFilterByType,然后在代码最开始位置加入ob_start('ob_gzhandler');

ob_start('ob_gzhandler');

$data = array(

array('name'=>'one','value'=>1),

array('name'=>'two','value'=>2),

array('name'=>'three','value'=>3),

array('name'=>'four','value'=>4),

array('name'=>'five','value'=>5),

array('name'=>'six','value'=>6),

array('name'=>'seven','value'=>7),

array('name'=>'eight','value'=>8),

array('name'=>'nine','value'=>9),

array('name'=>'ten','value'=>10),

);

header('content-type:application/json');

echo json_encode($data);

?>

java gzip压缩json_将PHP程序中返回的JSON格式数据用gzip压缩输出的方法相关推荐

  1. app开发历程————Android程序解析服务器端的JSON格式数据,显示在界面上

    上一篇文章写的是服务器端利用Servlet 返回JSON字符串,本文主要是利用android客户端访问服务器端链接,解析JSON格式数据,放到相应的位置上. 首先,android程序的布局文件main ...

  2. JS中循环遍历JSON格式数据

    //res为json格式数据 if (res != null) { //循环遍历resfor (var key in res) { //遍历中key为字段名的字符串,如{"a":& ...

  3. javascript中对象、JSON格式数据、创建对象的方式、数据类型分类及特点

    对象 对象指:具体的一个实物,javascript中对象是指一组没有顺序的属性和方法的集合,所有的事物都是对象,例如:函数,数组,字符串等.属性指事物的特征,一般为名词表示:方法指对象的行为,一般用动 ...

  4. html中如何美化展示json格式数据

    本篇文章给大家介绍 html中美化展示json格式数据的方式.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 直接上代码: html中主要加一个pre 的标签 <h2>G ...

  5. commit在c语言中的作用,【单选题】SQL语 言 中 COMMIT语句的主要作用是( ) A. 结束程序 B. 返回系统 C. 存储数据 D. 提交事务...

    [单选题]SQL语 言 中 COMMIT语句的主要作用是( ) A. 结束程序 B. 返回系统 C. 存储数据 D. 提交事务 更多相关问题 [判断题]骨与骨之间一般用关节和韧带连接起来. A. 正确 ...

  6. JAVA中返回json格式数据

    1. 返回json格式 package com.demo.util;import com.alibaba.fastjson.JSONObject;import java.util.HashMap; i ...

  7. C#net6控制台程序中读取appsettings.json

    C#net6控制台程序中读取appsettings.json 背景 具体实现 使用方法 背景 我们知道,在原来.netframework平台下的控制台程序配置文件为App.config,微软推出跨平台 ...

  8. 如何压缩Json格式数据,减少Json数据的体积?

    一.背景 最近刚刚做完一个中文汉字笔画排序的功能,链接如下: [我的Android进阶之旅]Android实现中文汉字笔划(笔画)排序.中文拼音排序.英文排序的国家地区选择界面 [我的Java开发学习 ...

  9. oracle中多层嵌套命名,一种多层嵌套的json格式数据的命名解析方法

    一种多层嵌套的json格式数据的命名解析方法 [专利摘要]一种n层嵌套的json格式数据的命名解析方法,包括以下步骤:首先,以n层嵌套的json格式数据为基础建立数据源:然后,以键值对为最小单元由外而 ...

最新文章

  1. mysql 字段授权_mysql授权管理
  2. 「深入浅出」了解语音识别的技术原理和应用价值?
  3. Daily Scrum 11.5
  4. Log图文详解(Log.v,Log.d,Log.i,Log.w,Log.e)(转)
  5. css 相对定位与绝对定位
  6. webstorm chrome热更新
  7. 重装系统的悲剧。。。。。
  8. 原型模式(Prototype) 1
  9. FR按钮调用数据库(MMSQL)存储过程,参数储存有返回值; 模板参数不可见 编辑后可见
  10. kml文件转成cvs_KMZ KML与SHP文件互相转换
  11. c语言色环电阻计算器源代码,色环电阻在线计算器
  12. Type C DP简介
  13. 计算机辅助故障树分析法,故障树分析法.doc
  14. EDI的含义及其重要性
  15. Notepad++设置记录
  16. UVA12304 2D Geometry 110 in 1!
  17. 【121期】面试官:什么是熔断?什么是服务降级?
  18. makex机器人程序_MakeX总决赛现场参赛选手在进行机器人编程
  19. 对话上海财经大学ITCS主任陆品燕教授:如何用一年时间,建设国际一流理论计算机研究中心?...
  20. 【C语言】判断一个浮点数是否等于零

热门文章

  1. [HTML]关于html禁止图片拖动,以及禁止拖动图片时打开新的标签页
  2. Flutter 用Texture控件在Windows平台实现视频渲染
  3. iTutorGroup一对多个性化教学 突破在线教育行业发展瓶颈
  4. VUE学习-基础(一)
  5. 淘宝天猫API item_search-按关键字搜索淘宝商品
  6. matlab ss2tf iu,常用Matlab控制系统处理函数 常用的控制系统处理函数
  7. 为什么篮球的中距离投篮很重要
  8. FortiGate防火墙HA下联堆叠交换机
  9. java毕业设计电子存证系统mybatis+源码+调试部署+系统+数据库+lw
  10. JAVA计算机毕业设计家居体验平台的设计与实现Mybatis+系统+数据库+调试部署