使用 Alamofire 下载图像并保存到 Mac 上的应用程序支持

Download Image Using Alamofire and Save to Application Support on Mac

Alamofire 自述文件表明您可以下载并保存这样的文件:

let destination = Alamofire.Request.suggestedDownloadDestination(directory: .DocumentDirectory, domain: .UserDomainMask)

Alamofire.download(.GET, "http://httpbin.org/stream/100", destination: destination)

...但我想更改保存位置。如何将 .DocumentDirectory 更改为我的应用程序在 Mac OS X 上的 Application Support 路径?

我可以像这样生成我的应用程序的本地 NSURL 路径:

let path = NSFileManager.defaultManager().URLsForDirectory(.ApplicationSupportDirectory, inDomains: .UserDomainMask)[0] as NSURL
let newPath = path.URLByAppendingPathComponent("MyApp/user-profile.png")

我不清楚如何将其与 Alamofire suggestedDownloadDestination 一起使用。

有什么想法吗?

suggestedDownloadDestination 将尝试查找可用目录,但在您的情况下,您已经知道完整路径,因此不需要它。

只需用您的路径创建一个闭包:

let path = NSFileManager.defaultManager().URLsForDirectory(.ApplicationSupportDirectory, inDomains: .UserDomainMask)[0] as NSURL
let newPath = path.URLByAppendingPathComponent("MyApp/user-profile.png")
Alamofire.download(.GET, "http://httpbin.org/stream/100", { _ in newPath })