2015-01-17 94 views
2

時,當我控制檯登錄我的返回數據,它看起來是這樣的:「意外令牌{」使用jquery.parsejson()

returnData = 
"{"requests":[{"region": "NA","message": "test","monster": "For Fun", 
"roomNumber" : "", "password" : "", "HR" : ""} 
{"region": "NA","message": "test","monster": "For Fun", "roomNumber" : "", 
"password" : "", "HR" : ""} 
]}" 

當我嘗試jQuery.parseJSON(returnData)它返回意外的標記{

的錯誤

我不確定需要發生什麼。任何想法都會很棒!由於

+0

咦?這甚至不是有效的JavaScript ...此外,jQuery會自動爲您解析JSON響應。你自己不需要這樣做。提示:使用http://jsonlint.com/來檢查JSON有效性。更重要的是:在服務器端使用適當的JSON序列化程序,我敢打賭,你現在正在通過串聯字符串來構建令人信服的JSON。不要這樣做。 – Tomalak

+1

似乎你的JSON無效。 – RE350

回答

2

{"region": "NA","message": "test","monster": "For Fun", 
"roomNumber" : "", "password" : "", "HR" : ""} 

應該有}後一個逗號,爲了一個對象被其他分離:

{"region": "NA","message": "test","monster": "For Fun", "roomNumber" : "", 
"password" : "", "HR" : ""} 

事實上,它不是一個有效的json

您可以使用this驗證程序對此進行檢查。使用此驗證器爲以下JSON

{ 
    "requests": [ 
     { 
      "region": "NA", 
      "message": "test", 
      "monster": "For Fun", 
      "roomNumber": "", 
      "password": "", 
      "HR": "" 
     }, 
     { 
      "region": "NA", 
      "message": "test", 
      "monster": "For Fun", 
      "roomNumber": "", 
      "password": "", 
      "HR": "" 
     } 
    ] 
} 

我明白了這是有效的。

1

有 「」 丟失:

{"requests": [{ 
    "region": "NA", 
    "message ": "test", 
    "monster": "For Fun", 
    "roomNumber": "", 
    "password": "", 
    "HR": "" 
}, { 
    "region": "NA", 
    "message": "test", 
    "monster": "For Fun", 
    "roomNumber": "", 
    "password": "", 
    "HR": "" 
}]} 
+1

謝謝我沒有注意到。我錯過了我的對象之間的逗號。 – jshill103

0

您的JSON無效。嘗試這個。

JSON

{ 
"requests": [{ 
     "region": "NA", 
     "message": "test", 
     "monster": "For Fun", 
     "roomNumber": "", 
     "password": "", 
     "HR": "" 
    }, 
    { 
     "region": "NA", 
     "message": "test", 
     "monster": "For Fun", 
     "roomNumber": "", 
     "password": "", 
     "HR": "" 
    }] 
} 
+0

正確的答案,但不太明顯,這是一個逗號錯誤 – jshill103

+0

[下次有點幫助](http://jsonlint.com/) – Damon