URLSession - 下载远程目录
Posted
技术标签:
【中文标题】URLSession - 下载远程目录【英文标题】:URLSession - Download remote directory 【发布时间】:2016-12-27 01:38:10 【问题描述】:我目前正在使用基于此教程http://sweettutos.com/2015/11/06/networking-in-swift-how-to-download-a-file-with-nsurlsession/ 的代码来使用 URLSession.downloadTask 下载远程文件。这出乎意料地简单。但是,我现在想下载远程目录的全部内容。 我可以使用 URLSessionDownloadTask 还是仅用于单个文件?如果没有,那么如何获取远程目录中包含的文件列表,以便我可以分别对每个文件使用 downloadTask?
【问题讨论】:
【参考方案1】:首先你想错了。
从remote
服务器,只有file
可以是downloaded
(不是文件夹)和save
在app
内。您必须下载的文件extension
应该是来自服务器端的configure
。然后是client
,您可以使用Sweettutos教程。
你要做的第一件事是:
与服务器端开发人员交谈,他必须将远程目录压缩为(.zip 或 .rar),您只能下载它。
然后,在您的代码中下载服务器端提供给您的 url 并将其保存在文档目录中,提取并读取您想要的文件。
在 URLSession 文档中:
下载任务以文件的形式检索数据,并支持 在应用未运行时进行后台下载和上传。
因此,没有办法您可以下载远程目录(未知文件扩展名),除非您从服务器端使该远程文件可用于某些文件扩展名。
【讨论】:
谢谢昂。只是没有想到要在服务器端压缩目录。以上是关于URLSession - 下载远程目录的主要内容,如果未能解决你的问题,请参考以下文章
从图像 url 下载图像方面,URLSession 与 GCD 有啥区别?
调用AfterdidCompleteWithError时如何使用URLSession downloadTaskWithResumeData重新开始下载..?
`urlSession(_:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:)` 在下载内容时只调用一次使用