swift3 获取不可变值的初始化 'task' 从未在 URLSession.shared.dataTask(with: url!)



我是 Swift 的新手。我试图简单地在网页中阅读,但收到错误"从未使用过不可变值'task'的初始化;考虑将其替换为分配给"_"或删除"Let Task ="语句上的错误。 这是我的代码(请原谅我的调试语句)。 我做错了什么?

let urlPath = "http://www.stackoverflow.com"
let url = URL(string: urlPath)
let session = URLSession.shared
let task = session.dataTask(with:url!) { (data, response, error) -> Void in
if (error == nil) {
print("inside If")
print(data)
} else {
print("inside Else")
print(error)
}
print("after If Else")
}

您看到的实际上是一个警告,编译器告诉您您初始化了一个变量,但从未使用它。通常,您可以将变量名替换为_或完全删除声明,因为您没有使用它(或者只是忽略警告)。但是,在您的情况下,您实际上需要它,在初始化数据任务后,您实际上并没有使用它,这就是为什么您看不到任何打印语句被输出的原因。要解决此问题,请拨打task.resume()。这样做还将删除警告,因为您现在实际使用该变量。

let urlPath = "http://www.stackoverflow.com"
let url = URL(string: urlPath)
let session = URLSession.shared
let task = session.dataTask(with:url!) { (data, response, error) -> Void in
if (error == nil) {
print("inside If")
print(data)
} else {
print("inside Else")
print(error)
}
print("after If Else")
}
task.resume()

相关内容

  • 没有找到相关文章

最新更新