2017-06-02 146 views
0

這是我的代碼:JsonParse錯誤在iPhone設備,但在正確模擬器

let res = try JSONSerialization.jsonObject(with: data!, options:.mutableContainers) as! [[String:Any]] 

的數據是Response.data的結果。

它運作良好的模擬器,但是當在iphone6控制檯輸出

Could not cast value of type ‘__NSDictionaryM’ to ‘NSArray’ 

JSON數據格式是這樣

[{"":""},{"":""},{"":""}] 

的jsondata形式服務器的Android,IOS模擬器效果很好。但是當涉及到我的iPhone設備時,代碼失敗。 響應json數據的結果就是{},它是空的,但是在Xcode模擬器上它很順利。

任何人都可以告訴我爲什麼嗎?

+0

試試這個,如果它不是數組:let res = try JSONSerialization.jsonObject(with:data !, options:.mutableContainers)as! [字符串:任意] – KKRocks

回答

0

試試這個會有幫助:as! Array<Dictionary<String,Any>>

如果您的格式是這樣[{"":""},{"":""},{"":""}]

+0

感謝您的幫助!但它在iPhone中無法使用,Xcode模擬器仍然運行良好。在模擬器中,響應數據僅在設備中,而在模擬器中爲{{「」:「」},{「」:「」},{「」:「」}],即使瀏覽器中的GET結果是正確的 –

+0

嘗試打印類型爲「任何」的響應 –

0

檢查,如果JSON是一個真正的數組。 順便說一句,不要強制解包數據或jsonObject

相關問題