aspjson解析

| 留学生招聘 |

【www.guakaob.com--留学生招聘】

ASP 发送及处理JSON格式请求
aspjson解析(一)

ASP 发送及处理JSON格式请求

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于解析和生成。JSON基于JavaScript的一个子集,采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C,C++,C#,Java,JavaScript,Perl,Python等),这些特性使JSON成为理想的数据交换语言。

可以使用eval()方法调用JavaScript编译器把JSON文本转变成对象。因为JSON是JavaScript的一个确切子集,编译器可以正确地解析JSON文本,然后生成一个对象结构。例如,下面的语句即使用eval()方法将JSON文本friend转换成对象j将JSON文本转换为对象后,便可以使用索引来获取相应的值。例如,下面的

JSON 详解
aspjson解析(二)

JSON详解

2013年9月

目 录

1 JSON基础 ................................................................................................................. 1

1.1

1.2 JSON 数据的结构 ................................................................................................ 1 JSON 数据的形式 ................................................................................................ 1

1.2.1

1.2.2

1.2.3

1.2.4

1.2.5 对象形式 ........................................................................................................... 1 数组形式 ........................................................................................................... 2 数值形式 ........................................................................................................... 2 字符串形式 ....................................................................................................... 2 数字形式 ........................................................................................................... 3

2 JSON的使用 ............................................................................................................. 4

2.1 JSON 数据的定义 ................................................................................................ 4

2.2 客户端处理JSON数据 ......................................................................................... 6

2.2.1

2.2.2 数据操作 ........................................................................................................... 8 数据处理 ......................................................................................................... 10

2.3 将JSON发给服务器 ............................................................................................ 11

2.3.1 通过GET以名称/值对发送JSON ................................................................... 11

2.3.2 利用POST请求发送JSON数据 .................................................................... 12

2.3.3 JSON就只是文本 ............................................................................................... 13

2.4 在服务器上解释JSON ......................................................................................... 13

2.4.1 处理JSON的两个步骤 ..................................................................................... 13

2.4.2 寻找JSON解析器 ............................................................................................. 13

3.4.4服务器输出JSON实例 ...................................................................................... 14

3 JSON与XML .......................................................................................................... 19

3.1 JSON的优点和不足 ........................................................................................... 19

3.1.1 JSON的优点 ....................................................................................................... 19

3.1.2 JSON的不足 ....................................................................................................... 20

3.2 JSON与XML对比 ............................................................................................. 20

3.2.1 可读性 .................................................................................................................. 20

3.2.2 可扩展性 .............................................................................................................. 20

3.2.3 编码难度 .............................................................................................................. 21

3.2.4 解码难度 .............................................................................................................. 21

3.2.5 实例比较 .............................................................................................................. 21

4 JSON解析器 .............................................................................................................. 22

4.1 JSON.JS.................................................................................................................. 22

4.1.1

4.1.2

4.2 JSON.JS简介 ............................................................................................... 22 JSON.JS实例 ............................................................................................... 23 JSON2.js ................................................................................................................. 25

5 JSON与JQUERY ..................................................................................................... 31

5.1处理从服务器返回的JSON数据 ...................................................................... 31【aspjson解析】

5.1.1 页面部分 ......................................................................................................... 31

5.2 处理普通JSON数据 ............................................................................................ 32

5.2.1 示例一 .................................................................................................................. 32

5.2.2 示例二 .................................................................................................................. 32

5.2.3 示例三 .................................................................................................................. 32

5.2.4 示例四 .................................................................................................................. 32

5.2.5 示例五 .................................................................................................................. 33

ASP JSON CLASS文档 .............................................................................................. 37

属性 ....................................................................................................................................... 37

方法 ....................................................................................................................................... 37

JSON详解

1 JSON基础

JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式,它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。

1.1 JSON 数据的结构

JSON建构于两种结构:

 “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对

象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),

有键列表(keyed list),或者关联数组 (associative array)。

 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。 这些都是常见的数据结构。事实上大部分现代计算机语言都以某种形式支持它们。这使得一种数据格式在同样基于这些结构的编程语言之间交换成为可能。

1.2 JSON 数据的形式

1.2.1 对象形式

对象 object :是“‘名称/值’对”的无序集合。对象以左花

括号“{”开始,以右花括号“}”结束。每个“名称”后跟一个

冒号“:”,而“‘名称/值’ 对”之间使用逗号“,”分隔。

asp.netJson序列化
aspjson解析(三)

ASP.net中用JSON序列化对象

【aspjson解析】 【aspjson解析】

过去我们使用JSON.net序列化一个对象,在asp.net3.5中已经集成了序列化对象为json的方法。

我们分别针对System.Runtime.Serialization.Json和System.Web.Script.Serialization两个命名空间下的不同方法进行序列化和反序列化。

第一种方法:

System.Runtime.Serialization.Json

(在vs2008添加引用System.Runtime.Serialization 如果在非WEB项目下还需要引用System.ServiceModel.Web)

JosnHelper.CS 代码如下:

1 public class JsonHelper

2 {

3 /// <summary>

4 /// 生成Json格式

5 /// </summary>

6 /// <typeparam name="T"></typeparam>

7 /// <param name="obj"></param>

8 /// <returns></returns>

9 public static string GetJson<T>(T obj)

10 {

11 DataContractJsonSerializer json = new DataContractJsonSerializer(obj.GetType());

12 using (MemoryStream stream = new MemoryStream()) 13 {

14 json.WriteObject(stream, obj);

15 string szJson = Encoding.UTF8.GetString(stream.ToArray()); return szJson;

16 }

17 }

18 /// <summary>

19 ///

获取Json

Model

20 /// </summary>

21 /// <typeparam name="T"></typeparam>

22 /// <param name="szJson"></param>

23 /// <returns></returns>

24 public static T ParseFromJson<T>(string szJson) 25 {

26 T obj = Activator.CreateInstance<T>();

27 using (MemoryStream ms = new MemoryStream(Encoding.UTF【aspjson解析】

8.GetBytes(szJson)))

28 {

29 DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());

30 return (T)serializer.ReadObject(ms);

31 }

32 }

33 }

下面为具体用法

声明一个需要输出JSON属性的类

1 public class topMenu

2 {

3 public string id { get; set; }

【aspjson解析】

4 public string title { get; set; }

5

public

string defaulturl {

get;

set; }

6 }

本例使它循环三次 利用上面GetJson方法序列化

1 topMenu t_menu = new topMenu()

2 {

3 id = "1",【aspjson解析】

4 title = "全局",

5 defaulturl = "123456"

6 };

7

8 List<topMenu> l_topmenu = new List<topMenu>();

9 for (int i = 0; i < 3; i++)

10 {

11 l_topmenu.Add(t_menu);

12 }

13 Response.Write(JsonHelper.GetJson<List<topMenu>>(l_topmenu));

输出结果为:

[{"defaulturl":"123456","id":"1","title":"

全局"},

{"defaulturl":"123456","id":"1","title":"全局"},

{"defaulturl":"123456","id":"1","title":"全局"}]

下面利用上面ParseFromJson方法读取Json

1 string szJson = @"{""id"":""1"",""title"":""全局"",""defaulturl"":""123456""} "; 2 topMenu t_menu2 = JsonHelper.ParseFromJson<topMenu>(szJson); 3 Response.Write(t_menu2.title);

输出结果为:全局

第二种方法

System.Web.Script.Serialization (引用System.Web.Extensions.dll)

还是用到上面方法中JSON属性的类

下面和上面方法中一样。循环三次就。序列化方式不一样

1 topMenu t_menu = new topMenu()

2 {

3 id = "1",

4 title = "全局",

5 defaulturl = "123456"

6 };

7

8 List<topMenu> l_topmenu = new List<topMenu>(); 9

10 for (int i = 0; i < 3; i++)

11 {

12 l_topmenu.Add(t_menu);

13 }

下面用这种方式输出:

本文来源:http://www.guakaob.com/qiuzhizhaopin/446865.html

    热门标签

    HOT