iOS中的错误:“您没有权限”

时间:2015-12-11 02:23:16

标签: ios swift directory dropbox-api

我正在使用Swift中的iOS项目,该项目使用Dropbox API将文本文件上传到Dropbox,以及从Dropbox加载和读取它们。但是,当我尝试使用DBRestClient使用以下行加载文件时:

restClient.loadFile("/data/" + yearStr + "/" + yearMonthStr + "/" + fullStr + ".txt", atRev: nil, intoPath: "temp2.txt")

我在控制台中看到以下错误消息:

  

DropboxSDK:向/1/files/sandbox/data/15/15_12/15_12_10.txt发出错误请求 - (404)路径是目录`

我不确定这意味着什么,因为调用中涉及的路径看起来都不像我的目录。我已经搜索过这个错误消息,但我似乎无法在网上任何地方找到它,而且我不确定还有什么可能导致它,因为注释掉这一行可以防止出现错误并且同样的文件路径工作正常其他不涉及加载文件的调用。我错过了loadFile()的工作原理吗?

更新:我通过删除具有该文件路径的目录来修复先前的错误,使其选择正确的文件。但是,我现在收到以下错误:

DropboxSDK: error making request to /1/files/sandbox/data/15/15_12/15_12_10.txt - (513) Error Domain=NSCocoaErrorDomain Code=513 "The file couldn’t be saved because you don’t have permission." UserInfo={path=/data/15/15_12/15_12_10.txt, destinationPath=temp2.txt}

我不确定这是什么意思 - 我手机上的目的地或者Dropbox上的文件没有权限吗?我正在查找此错误消息,但我还没有找到任何内容,所以非常感谢帮助。

1 个答案:

答案 0 :(得分:1)

根据documentation,代码513对应于:

  

NSFileWriteNoPermissionError = 513,

这似乎与您获得的错误消息相匹配,应该引用本地目标路径,在您的情况下是:

  

temp2.​​txt

你应该检查你是否有权写入该本地路径,并且它是一个有效的路径,例如,它应该以'/'?开头。 (或者,也许你应该写NSTemporaryDirectory或类似的东西。)