【发布时间】:2020-07-25 20:25:04
【问题描述】:
我正在尝试使用 dataTask 类读取 URL,但遇到了有线错误,请有人帮我解码
错误:
从“(Data?, URLResponse?, Error?) throws -> Void' 类型的抛出函数到非抛出函数类型“(Data?, URLResponse?, Error?) -> Void”的无效转换
let url = URL(string: source)!
let session = URLSession(configuration: .default)
session.dataTask(with: url) { (data, _, err) in
if err != nil {
print ((err?.localizedDescription)!)
return
}
let json = try !JSON(data : data!)
for i in json["articles"] {
let title = i.1["title"].stringValue
let description = i.1["description"].stringValue
let url = i.1["url"].stringValue
let image = i.1["urlToImage"].stringValue
let id = i.1["publishedAt"].stringValue
self.datas.append(dataType(id: String, title: <#T##String#>, desc: <#T##String#>, url: <#T##String#>, image: <#T##String#>))
}
}
【问题讨论】:
-
去掉return并用else替换 if err != nil { print ((err?.localizedDescription)!) } else { let json = try !JSON(data : data!) 看看这里有一个教程raywenderlich.com/3244963-urlsession-tutorial-getting-started