m939594960
V2EX  ›  问与答

那种才是标准的 json 格式?

  •  
  •   m939594960 · Dec 2, 2016 · 3145 views
    This topic created in 3493 days ago, the information mentioned may be changed or developed.

    第一种

    {
        "links": [
            {
                "name": "Google",
                "url": "http://www.google.com"
            },
            {
                "name": "Baidu",
                "url": "http://www.baidu.com"
            },
            {
                "name": "SoSo",
                "url": "http://www.SoSo.com"
            }
        ]
    }
    

    第二种

        [
            {
                "name": "Google",
                "url": "http://www.google.com"
            },
           {
                "name": "Baidu",
                "url": "http://www.baidu.com"
            },
            {
                "name": "SoSo",
                "url": "http://www.SoSo.com"
            }
        ]
    
    

    第二种写起来比较方便,但是好像安卓 取值比较麻烦

    那么这两种那种才是标准的 JSON 格式呢?

    12 replies    2016-12-03 10:17:45 +08:00
    zzNucker
        1
    zzNucker  
       Dec 2, 2016
    都是标准的啊。。。 区别只是想怎么用,或者你要传多少东西而已,如果你要传的不止 links 一个,那你肯定不能用第二种啊
    R18
        2
    R18  
       Dec 2, 2016 via Android
    第一种是对象 第二种是数组
    stcasshern
        3
    stcasshern  
       Dec 2, 2016
    都算,第一个应该是 json 封装 jsonarray 吧,第二个是 jsonarray
    justfly
        4
    justfly  
       Dec 2, 2016
    都标准 从实践来看 第一种更好
    xiaqinglin
        5
    xiaqinglin  
       Dec 2, 2016
    第一个是 JsonObject,第二个 JSONArray ,一般都可以吧
    shyling
        6
    shyling  
       Dec 2, 2016
    BenX
        7
    BenX  
       Dec 2, 2016
    如果是 Android 开发 jave 那里的坑而已,必须对 array 有个具名的对象。
    不能是第二种空的 array
    FinnBai
        8
    FinnBai  
       Dec 2, 2016
    @BenX 是啊 开发接口时也碰到这个问题了
    zhouyg
        9
    zhouyg  
       Dec 2, 2016
    我们常用第一个种,最起码能带点意思解释一下
    learnshare
        10
    learnshare  
       Dec 2, 2016
    都是
    CtrlSpace
        11
    CtrlSpace  
       Dec 3, 2016
    无论是用 Gson 还是用 org.json.JSONObject / JSONArray

    第二种都很好解析啊(我做 Android 的)

    反而第一种更麻烦...
    CtrlSpace
        12
    CtrlSpace  
       Dec 3, 2016
    上面这两种都可以,比较差的实践是这样的

    {
    "baidu":
    {
    "url":"www.baidu.com"
    },
    "google":
    {
    "url":"www.google.com"
    },
    "qq":
    {
    "url":"www.qq.com"
    }
    }

    这种 key 不固定的,长度也不固定的,才是客户端不喜欢的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2696 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 88ms · UTC 12:12 · PVG 20:12 · LAX 05:12 · JFK 08:12
    ♥ Do have faith in what you're doing.