0

我对 json 响应有点陌生。我一直在使用 json.net 将我的响应解析为自定义对象。但我觉得这个响应是一种标准格式,我应该能够轻松解析。

这是响应的示例。

 {"jquery": 
[
    [0, 1, "call", ["body"]], 
    [1, 2, "attr", "find"], 
    [2, 3, "call", [".status"]], 
    [3, 4, "attr", "hide"], 
    [4, 5, "call", []], 
    [5, 6, "attr", "html"], 
    [6, 7, "call", [""]], 
    [7, 8, "attr", "end"], 
    [8, 9, "call", []], 
    [0, 10, "call", ["body"]], 
    [10, 11, "attr", "captcha"], 
    [11, 12, "call", ["uIP22Wow9xa68aLQ0tl1e9Uiiinracdj"]]
]}

这是标准的还是我应该继续使用我的自定义对象?

谢谢

4

2 回答 2

1

.NET 4.5 包含一个JavaScriptSerializer 类,它可以轻松解析任何内容。

我通常会解析我的数据做这样的事情..

private struct MyStruct
{
  public System.Collections.ArrayList jquery { get; set; }
}

string testJson = "{\"jquery\": [[0, 1, \"call\", [\"body\"]], [1, 2, \"attr\", \"find\"], [2, 3, \"call\", [\".status\"]], [3, 4, \"attr\", \"hide\"], [4, 5, \"call\", []], [5, 6, \"attr\", \"html\"], [6, 7, \"call\", [\"\"]], [7, 8, \"attr\", \"end\"], [8, 9, \"call\", []], [0, 10, \"call\", [\"body\"]], [10, 11, \"attr\", \"captcha\"], [11, 12, \"call\", [\"uIP22Wow9xa68aLQ0tl1e9Uiiinracdj\"]]]}";
MyStruct generic = new System.Web.Script.Serialization.JavaScriptSerializer().Deserialize<MyStruct>(testJson);

在此处输入图像描述

于 2013-02-05T00:59:49.453 回答
0

这是格式良好的 JSON,其中一个对象名为"jquery". 它的值是一个数组,该数组的每个元素又是一个数组。内部数组包含几个值:两个数字,然后是字符串,最后是字符串或单个字符串的数组。

没有任何迹象表明任何其他命名的对象"jquery"是否具有相同的结构。

在没有任何其他模式信息的情况下,通用 JsonObject 似乎是解析它的唯一有用结构

于 2013-02-04T23:56:32.047 回答