2012-04-13 191 views
3

我與正在發送這樣的JSON響應的API時:JSON包含減號(「 - 」)char:這是有效/標準嗎?

[ 
    - { 
    "id": 46843639, 
    "nickname": "JSON", 
    "registration_date": "2004-03-07T23:16:20.000-04:00", 
    "country_id": "BR", 
    "user_type": "normal", 
    "logo": null, 
    "points": 91, 
    "site_id": "JSN", 
    "permalink": "http://xxxxxx", 
    "seller_reputation": - { 
     "level_id": "2_orange", 
     "power_seller_status": null, 
     "transactions": - { 
     "period": "historic", 
     "total": 14, 
     "completed": 8, 
     "canceled": 6, 
     "ratings": - { 
      "positive": 1, 
      "negative": 0, 
      "neutral": 0, 
     }, 
     }, 
    }, 
    "status": - { 
     "site_status": "active", 
    }, 
    }, 
] 

我找不到那個負「 - 」符號在任何規範文檔。這是JSON標準嗎?

+0

還有最後一個捲曲的右大括號後面的逗號? – John 2012-04-13 21:22:32

+0

是的,它從網站本身提取,確實非常奇怪。聽起來像我必須編寫我自己的自定義解析器爲此,偉大的... :( – ruhalde 2012-04-13 21:26:48

+5

Pfft。看起來像服務是刮一些其他工具的JSON顯示輸出;這些「 - 」可能是可以在工具中點擊,並且摺疊結構 – 2012-04-13 21:28:57

回答

5

不,不是。服務器發送給你破碎的JSON。

-有效的唯一時間是當它在字符串中,當它緊挨着一個數字之前,或者它緊跟在浮點數中的eE之後。

除此之外,逗號應爲單獨的名稱/值對和數組元素,不遵循它們。在每個對象/數組中的最後一個條目之後的逗號也是無效的。

+0

好吧,看起來這個響應在使用之前確實需要很好的清理無論如何,謝謝你們,在Stackoverflow中真的幫了我很多,真是太棒了! – ruhalde 2012-04-13 21:45:31