Xcode8 beta 6 - 带有 completionHandler 参数的 URLSession 不工作

Xcode8 beta 6 - URLSession with completionHandler argument not working

从 beta 5 更改为 beta 6 后,我似乎根本无法在我的代码中使用此方法。

    open func dataTask(with request: URLRequest, completionHandler: @escaping (Data?, URLResponse?, Error?) -> Swift.Void) -> URLSessionDataTask

我的代码:

        let task = self.createSession().dataTask(with: request, completionHandler: { (data, response, error) in
            self.handleTaskResult(data: data, response: response, error: error, completionHandler: completionHandlerIncoming)
        })

我明白了 "Cannot invoke 'dataTask' with an argument list of type '(with: URLRequest, completionHandler: (Data?, URLResponse?, Error?) -> Void)'"。尽管这是 xcode 给我的功能的完成。

如果我再尝试:

        let task = self.createSession().dataTask(with: request) { data, response, error in
            self.handleTaskResult(data: data, response: response, error: error, completionHandler: completionHandlerIncoming)
        }

还是不行。

更新:

我发现我正在调用 handleTaskResult,它有错误 NSError?,但现在错误是 Error?,更改后,它编译!

我发现我正在调用 handleTaskResult,它有错误 NSError?,但现在错误是 Error?,更改后,它编译!