js与C#服务端 json数据交互
1.1 服务端返回给前端
返回的数据都放入对象中(根据需求:单个对象,集合,键值对),然后JSON序列化返回给前端。这里可以引用JSON.NET 库,也可以用.NET自带的类库: JavaScriptSerializer().Serialize(obj) ;
JSON序列化后的结果是一个键和值都用双引号括起的字符串: "{"msg" : "成功 文件大小为:16397", "imgurl":"/head.jpg" }" 属性和值以冒号分开,属性以逗号分隔。
如果有多个相同的对象则会放入JSON数组 " [{"Name" : "jack", "Age" : 18},{"Name" : "mike", "Age" : 20} ]"
1.2 前端用js接受数据
服务器为我们返回的是一个字符串,还不是js中的json对象。所以我们还需要转换。假设返回的字符串在 data变量中,这里有3中转换方法:
1、var json = (new Function("return " + data))();
2、var json = eval('(' + data + ')');
3、var json = JSON.parse(data);