你好我有工作json解析代碼爲swift2.2,但是當我用它爲Swift 3.0給我那個錯誤Swift 3 URLSession.shared()對成員'dataTask的歧義引用(with:completionHandler :)錯誤(bug)
ViewController.swift:132:31:曖昧參考成員 'dataTask(附:completionHandler :)'
我的代碼在這裏
let listUrlString = "http://bla.com?batchSize=" + String(batchSize) + "&fromIndex=" + String(fromIndex)
let myUrl = URL(string: listUrlString);
let request = NSMutableURLRequest(url:myUrl!);
request.httpMethod = "GET";
let task = URLSession.shared().dataTask(with: request) {
data, response, error in
if error != nil {
print(error!.localizedDescription)
DispatchQueue.main.sync(execute: {
AWLoader.hide()
})
return
}
do {
let json = try JSONSerialization.jsonObject(with: data!, options: .mutableContainers) as? NSArray
if let parseJSON = json {
var items = self.categoryList
items.append(contentsOf: parseJSON as! [String])
if self.fromIndex < items.count {
self.categoryList = items
self.fromIndex = items.count
DispatchQueue.main.async(execute: {
self.categoriesTableView.reloadData()
AWLoader.hide()
})
}else if(self.fromIndex == items.count){
DispatchQueue.main.async(execute: {
AWLoader.hide()
})
}
}
} catch {
AWLoader.hide()
print(error)
}
}
task.resume()
感謝的想法。
我得到相同的錯誤,因爲我傳遞一個字符串到'dataTask(帶有:'例如我有'url =「www.yahoo.com',我直接將它傳遞給函數**而沒有**將其轉換爲'URL' – Honey