我正在尝试使用Alamofire在swift中从url下载PDF文件,它显示损坏的文件。我需要添加一些额外的参数以用于安全目的。
这是我的网址格式。
当我尝试在浏览器中粘贴此网址时,它会从网址下载PDF。但是当我尝试使用Alamofire从Swift的url下载pdf时,它会存储一些随机字节数据。但是没有PDF文件。当我尝试打开pdf时,它显示文件已损坏。
这是我的Alamofire代码。
let destination = Alamofire.Request.suggestedDownloadDestination(directory: .ApplicationSupportDirectory, domain: .UserDomainMask)
Alamofire.download(.GET, url!, destination: destination).progress({ (bytesRead, totalBytesRead, totalBytesExpectedToRead) in
print(totalBytesRead)
// This closure is NOT called on the main queue for performance
// reasons. To update your ui, dispatch to the main queue.
dispatch_async(dispatch_get_main_queue()) {
print("Total bytes read on main queue: \(totalBytesRead)")
}
}).response(completionHandler: { (request, response, data, error) in
if let error = error {
print("Failed with error: \(error)")
} else {
print("Downloaded file successfully")
}
})
请帮我解决。 提前谢谢。
答案 0 :(得分:3)
我的问题现在已经解决了。我删除了我的PDF网址的URL编码,并通过编码传递给Almofire下载请求。感谢您的时间和评论。