2014-03-03 584 views
4

我正在處理一個寧靜的API,並且已經使用http://jsonlint.com/進行了驗證。組合了兩個JSON對象後,我碰到了;JSON驗證期望'EOF'

Parse error on line 932: 
...ssions": 329 }],[ {  "m 
---------------------^ 
Expecting 'EOF' 

我環顧四周,發現this的問題,但所有的答案指向沒有逗號,凡在我的問題我有一個逗號。驗證人還能找什麼?

它指向我的對象數組之間的代碼;

], 
[ 
+0

請顯示相關JSON的*完整*代表性示例。我已經對問題進行了有根有據的猜測,但一個完整的,最簡單的例子總是最好的方法。 –

回答

15

您還沒有表現出足夠的JSON的,但我猜它看起來像這樣:

[ 
    {"some": "object"}, 
    {"some": "object"} 
], 
[ 
    {"some": "object"}, 
    {"some": "object"} 
] 

...這是無效的。在JSON中,必須有一個頂級項目(它在完整的JSON文檔中必須是對象或數組)。

如果要合併兩個反應,可能使他們每個人的包裝對象的屬性值,例如:

{ 
    "response1": [ 
     {"some": "object"}, 
     {"some": "object"} 
    ], 
    "response2": [ 
     {"some": "object"}, 
     {"some": "object"} 
    ] 
} 
+0

你的猜測是正確的,第一塊是我把JSON放在一起的方式。我會盡力找出你的解決方案。謝謝。 –

0

我的問題是,JSON必須是一個數組封裝內。要結合我的兩個JSON對象我用:

String o1 = JSON1; 
    String o2 = JSON2; 
    String[] jsonArray = {o1, o2}; 
    return Arrays.deepToString(jsonArray); 
0

我多根JSON結構方面的專家 但這裏是我做過什麼..只是改變了流爲UTF-8編碼和我的PHP代碼開始工作得很好