【问题标题】:Error in iOS: "you don't have permission"iOS 中的错误:“您没有权限”
【发布时间】:2015-12-11 02:23:16
【问题描述】:

我正在使用 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) Path is a directory`

我不太确定这意味着什么,因为调用中涉及的路径对我来说都不像目录。我已经搜索过这个错误消息,但我似乎无法在网上的任何地方找到它,而且我不确定还有什么可能导致它因为注释掉这一行可以防止错误出现并且相同的文件路径在其他不涉及加载文件的调用。我是否遗漏了 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 上的文件吗?我正在查找此错误消息,但我还没有找到任何内容,因此非常感谢您的帮助。

【问题讨论】:

    标签: ios swift directory dropbox-api


    【解决方案1】:

    根据documentation,代码513对应:

    NSFileWriteNoPermissionError = 513,

    这似乎与您收到的错误消息相匹配,并且应该指的是本地目标路径,在您的情况下是:

    temp2.​​txt

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

    【讨论】:

      猜你喜欢
      • 2019-11-22
      • 1970-01-01
      • 1970-01-01
      • 2013-01-03
      • 2012-07-21
      • 2019-06-23
      • 2018-04-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多