关于JSON数据传输效率的一点看法 - Web 开发 / Ajax
通过JSON返回的服务器数据的一般表现形式:
{ records:3,
page:1,
pagesize:20,
searchstr:"J",
datas:[
{sid:"41",sname:"Jacky",score:"79"},
{sid:"46",sname:"Jannie",score:"90"},
{sid:"87",sname:"Johnson",score:"56"}]
}
这个形式有个好处,调用数据可以直接引用字段名,但是有个缺陷就是明显浪费带宽,因为储存了大量的重复字段名称。
因此认为可以改进:
{ records:3,
page:1,
pagesize:20,
searchstr:"J",
fields:["sid","sname","score"]
datas:[
["41","Jacky","79"],
["46","Jannie","90"],
["87","Johnson","56"]]
}
各位认为哪种方法比较好?
------解决方案--------------------我个人还是支持上面的写法。这样取值是超级无敌方便的了。
这个比起用XML来传输数据并解析数据,已经节约很多很多的带宽了。
我们做项目时候,并不是要求选择带宽占用最小的,而是选择解析速率最高的,最合适的方法。
------解决方案--------------------如果你的数据量特别大的话,我是比较赞同第二种写法的。你只需要写一个WRAPPER通过KEY来取VALUE就可以了。
------解决方案--------------------CSS code
第一种显示字段名称,字段多就浪费带宽。但是在字段多的时候 可读性 就比较强了。
第二种相反,字段多的时候可读性很差的,你知道在字段多的时候,数组中对应的字段是哪个吗?
所以要看情况,而定!!!
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
if 字段多,数据量大
return 方法二
else
if 提取和维护方便
return 方法一 or json
else
return 数组
视情况而定吧,但这是应该思考的