繁体   English   中英

URLSession 的 dataTask 未运行

[英]dataTask of URLSession not running

我正在尝试从 API 中获取结果,但我在运行请求本身时遇到了问题。

这是我目前拥有的代码:

let url = URL(string: "https://httpbin.org/get")!
let task = URLSession.shared.dataTask(with: url) { (data, response, error) in
if let error = error {
        print("error: \(error)")
    } else {
        if let response = response as? HTTPURLResponse {
            print("statusCode: \(response.statusCode)")
        }
        if let data = data, let dataString = String(data: data, encoding: .utf8) {
            print("data: \(dataString)")
        }
    }
}
task.resume()

但是,它似乎没有在 dataTask 的代码块内运行任何东西。

谢谢你的帮助:)

您的代码运行良好。 看来您只是错误地调用了 function ......试试这种方式:

1:

    func request() {
    let url = URL(string: "https://httpbin.org/get")!
    let task = URLSession.shared.dataTask(with: url) { (data, response, error) in
    if let error = error {
            print("error: \(error)")
        } else {
            if let response = response as? HTTPURLResponse {
                print("statusCode: \(response.statusCode)")
            }
            if let data = data, let dataString = String(data: data, encoding: .utf8) {
                print("data: \(dataString)")
            }
        }
    }
    task.resume()
}

2:

    override func viewDidLoad() {
    super.viewDidLoad()

    request()
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM