URLSession.dataTask 在每次使用 Xcode 12.5 Beta 2 时都会超时

lep*_*olt 7 xcode ios swift urlsession

我今天升级到最新的 Xcode 12.5 Beta 2,现在我的所有 URLSession.dataTask 请求都失败并超时。我创建了一个示例项目,它提出了一个简单的请求,但每次都失败了。它适用于 Xcode 12.5 Beta 1。

这是一个简单的请求:

guard let url = URL(string: "https://hacker-news.firebaseio.com/v0/item/8863.json?print=pretty") else { fatalError() }

let startTime = Date()

let task = URLSession.shared.dataTask(with: url) { data, response, error in
    let requestTime =  Date().timeIntervalSince(startTime)

    print("Time for request: \(requestTime)")

    if let error = error {
        updateLabel("requestTime: \(requestTime)\nError: \(error.localizedDescription)")
        return
    }
    guard let httpResponse = response as? HTTPURLResponse,
          (200...299).contains(httpResponse.statusCode) else {
        updateLabel("requestTime: \(requestTime)\n\(response.debugDescription)")
        return
    }
    if let mimeType = httpResponse.mimeType, mimeType == "text/html",
       let data = data,
       let string = String(data: data, encoding: .utf8) {
        DispatchQueue.main.async {
            print(string)
            //                    self.webView.loadHTMLString(string, baseURL: url)
        }
    }
}
task.resume()

func updateLabel(_ text: String) {
    print(text)
}
Run Code Online (Sandbox Code Playgroud)

测试版中的其他人有同样的问题吗?

小智 0

是的,我遇到了同样的问题,并且正在努力解决。看来你的代码没有任何问题。可能是xcode上的一些权限。请务必在 info.plist 中添加此行,在此处输入图像描述