我在解析Swift時遇到問題,它說我無法將[Dictionary]類型的值轉換爲類型[String:AnyObject] 這是導致錯誤無法轉換類型的值 - Swift
self.grabData(json: json as [String : AnyObject])
這是整個代碼。謝謝!
func jsonParser() {
let urlPath = "http://csmadison.dhcp.bsu.edu/~vjtanksale/cs320/selectstudents.php"
guard let endpoint = URL(string: urlPath) else {
print("Error creating endpoint")
return
}
let request = URLRequest(url: endpoint)
URLSession.shared.dataTask(with: request) { (data, response, error) in
do {
guard let data = data else {
return
}
guard let json = try JSONSerialization.jsonObject(with: data, options: []) as? [Dictionary<String, Any?>] else {
print("No idea")
return
}
print(json)
self.grabData(json: json as [String : AnyObject]) // This is where I get the error
} catch let error as NSError {
print(error.debugDescription)
}
}.resume()
}
func grabData(json: [String:AnyObject]) {
guard let searchResult = SearchResult(json: json) else {
return
}
self.results.append(searchResult)
DispatchQueue.main.async {
self.listTableView.reloadData()
}
}
這個固定的問題。然而,我的結果字典在這之後是空的。只有json有數據。 – tncb
循環時'result'爲空嗎?或者你的'self.results'是空的? –
他們都是空的。我相信在json循環中的結果不會附加它。 – tncb