我是swift的新手,我试图找出如何从NAS服务器检索目录列表到我的应用程序。 NAS服务器,MAC和iPAD都在我的局域网中。
我正在搜索确切的问题,但找不到任何提示,我几天都在努力。
我厌倦了使用NSFileManger和enumeratorAtURL但是当我将URL更改为本地NAS的URL时,我无法检索任何值。我总是得到:
无法完成操作。 (可可错误260。)
仅访问设备目录。
这是我使用的相关代码段:
var fileManger = NSFileManager()
var keys = [NSURLIsDirectoryKey]
let url:NSURL = NSURL(string: "http://192.168.178.55/photos/")!
var handler = {
(url:NSURL!,error:NSError!) -> Bool in
println(error.localizedDescription)
println(url.absoluteString)
return true
}
var enumarator = fileManger.enumeratorAtURL(
url, includingPropertiesForKeys:
keys, options: NSDirectoryEnumerationOptions(),
errorHandler:handler)
有什么想法可以解决这个问题吗?
此致 米格尔
答案 0 :(得分:1)
NSFileManager
无法处理HTTP。它旨在使用file:
个网址。如果您的NAS只是通过HTTP呈现其文件系统的只读视图,那么您需要使用HTTP请求,主要是migration guide。如何确定文件和目录的属性取决于NAS如何公开该信息。
如果您的NAS正在暴露WebDAV,那么您将需要一个WebDAV客户端。有关示例,请参阅NSURLSession
和ConnectionKit(ConnectionKit使用)。