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?
,更改后,它编译!
从 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?
,更改后,它编译!