V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
m939594960
V2EX  ›  问与答

那种才是标准的 json 格式?

  •  
  •   m939594960 · 2016-12-02 14:32:19 +08:00 · 2684 次点击
    这是一个创建于 2914 天前的主题,其中的信息可能已经有所发展或是发生改变。

    第一种

    {
        "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 条回复    2016-12-03 10:17:45 +08:00
    zzNucker
        1
    zzNucker  
       2016-12-02 14:48:55 +08:00
    都是标准的啊。。。 区别只是想怎么用,或者你要传多少东西而已,如果你要传的不止 links 一个,那你肯定不能用第二种啊
    R18
        2
    R18  
       2016-12-02 14:59:06 +08:00 via Android
    第一种是对象 第二种是数组
    stcasshern
        3
    stcasshern  
       2016-12-02 14:59:26 +08:00
    都算,第一个应该是 json 封装 jsonarray 吧,第二个是 jsonarray
    justfly
        4
    justfly  
       2016-12-02 15:00:30 +08:00
    都标准 从实践来看 第一种更好
    xiaqinglin
        5
    xiaqinglin  
       2016-12-02 15:39:32 +08:00
    第一个是 JsonObject,第二个 JSONArray ,一般都可以吧
    shyling
        6
    shyling  
       2016-12-02 15:53:19 +08:00
    BenX
        7
    BenX  
       2016-12-02 15:56:20 +08:00
    如果是 Android 开发 jave 那里的坑而已,必须对 array 有个具名的对象。
    不能是第二种空的 array
    baiyi
        8
    baiyi  
       2016-12-02 15:58:42 +08:00
    @BenX 是啊 开发接口时也碰到这个问题了
    zhouyg
        9
    zhouyg  
       2016-12-02 16:02:30 +08:00
    我们常用第一个种,最起码能带点意思解释一下
    learnshare
        10
    learnshare  
       2016-12-02 16:09:48 +08:00
    都是
    CtrlSpace
        11
    CtrlSpace  
       2016-12-03 10:13:28 +08:00
    无论是用 Gson 还是用 org.json.JSONObject / JSONArray

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

    反而第一种更麻烦...
    CtrlSpace
        12
    CtrlSpace  
       2016-12-03 10:17:45 +08:00
    上面这两种都可以,比较差的实践是这样的

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

    这种 key 不固定的,长度也不固定的,才是客户端不喜欢的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2691 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 00:18 · PVG 08:18 · LAX 16:18 · JFK 19:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.