1

我想从磁盘获取 PFFile。我在这里了解到 Parse 会在下载所有 PFFile 时对其进行缓存。我现在想知道如何检索该缓存。什么是正确的路径。这里建议我使用的路径

NSString *path = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES)[0] stringByAppendingFormat:@"/Caches/Parse/PFFileCache/%@", pffile.name];

NSData *data = [[NSFileManager defaultManager] contentsAtPath:path];

数据始终为零。

我使用正确的路径吗?/Caches/Parse/PFFileCache/

4

2 回答 2

4

根据您对问题的描述,您应该使用稍微不同的过程。PFFile最初使用该接口,但随后存储文件中的urls 以供以后需要访问文件数据的情况下使用。通过这种方式,您可以直接链接到文件数据,并且可以使用正常连接或会话进行下载。

如果您实际上不需要PFFile任何有关下载的内容,那么使用 REST 接口可能更适合您。

另一种选择是发出最初向您返回文件信息的相同请求,但指示 API 仅使用缓存信息。这是通过cachePolicyCACHE_ONLY您的PFQuery.

于 2014-10-27T07:44:51.487 回答
0

我在 Swift 中为此苦苦挣扎了一段时间,并在这里找到了有助于回答的线程:

let fileURL: String = NSSearchPathForDirectoriesInDomains(.libraryDirectory, .userDomainMask, true)[0] + ("/Caches/Parse/PFFileCache/\(checkedRemoteAsset.name)")

谢谢你,KKendall!

于 2017-07-14T04:59:38.970 回答