我想从某个网址下载文件。 我需要的是数据委托(委托给我下载的数据)。 我实现了:
func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) {
委托,但不会被调用。
我的代码是:
func download(url: URL)
{
let sessionConfig = URLSessionConfiguration.default
let session = URLSession(configuration: sessionConfig, delegate: self, delegateQueue: nil)
let task = session.downloadTask(with: url)
task.resume()
}
func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) {
print("apending ")
self.dataaa.append(data)
}
func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive response: URLResponse, completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
print("here")
}
两个委托函数不被调用!
答案 0 :(得分:0)
您正在使用委托方法处理数据任务,但您正在创建下载任务。这两种任务类型的工作方式不同,并使用完全不同的委托方法。