从网址下载Alamofire后确定文件类型

时间:2018-03-21 23:02:33

标签: ios swift file alamofire

我抓了一个网站,找到了我要下载的文件的链接。我从链接获得的信息是标题和资源的URL(来自给定的<a href> HTML元素)。我使用Alamofire下载这样的资源:

let fileUrl = FileManager.default.temporaryDirectory.appendingPathComponent("quicklook.txt")
let destination: DownloadRequest.DownloadFileDestination = { _,_ in return (fileUrl, [.removePreviousFile, .createIntermediateDirectories]) }

let request = Alamofire.download(resourceUrl, to: destination).responseData { (response) in
    switch response.result {
    case .failure(let error):
        break
    case .success(let result):
        break
    }
}

我的问题是链接到的文件可能有多种不同的文件类型,例如.docx.txt.img.pdf等。

是否可以在不知道之前的pathExtension的情况下确定正在下载的文件?

当从链接下载资源时,safari如何知道它正在下载什么类型的内容?

1 个答案:

答案 0 :(得分:1)

响应头包含一个Content-Type属性,用于传递数据类型。

您应该能够从alamofire获取响应标头并检查内容类型。

编辑:看起来这里接受的答案是您可能想要的How to retrieve Alamofire response header for a request